![]() |
|
|
|
|
|
||||||||||
|
| User list | Rules | You are not logged in.
Hi, this is my first post here, I am really impressed with this project! I am not sure if this is the right place for this posting, are there a developers forum?
I have a client that wants to use gigapixel panoramas for inspection of bridges (searching for cracks in the concrete structure). We have performed some test with a manual tripod head (a geard manfroto head), a Canon EOS 5D Mark 2 and a Canon 800 mm F2.8 USM lens. The results are promising.
Now we would like to use a motorized head but the Merlin/Orion head used that is supported by Papywizard is probably to small for this setup. It's not only the weight that is a concern, wind is a serious problem in this environment.
My client recently bought a Celstron CPC 1100 http://www.celestron.com/c3/product.php?ProdID=37 that we now intend to rebuild as a panorama head. I can now communicate with the head via terminal and found out that commands differ from the Merlin/Orion head. I am now investigating how to write a driver for this telescope to make it work with Papywizard. I would appreciate any hints about how to proceed with this.
I intent to use USB-serial cable to communicate with the head. This head has a standard RS232 connector via the hand controller (yes, RS232, not TTL for this beast).
I have some programming experience, but not with Python. Today I usually write PHP, but I have a previously developed in Java/C/C++.
I have a few starter questions.
Are there already anybody working on similar heads?
i intend to develop on Mac OS 10.6 - is this a good decision or is it easier to use Windows or Linux?
What files do I need to edit/copy to write a driver for a new head? Should I start with a copy of merlinOrionHardware.py?
Any hints on how to proceed are appreciated!
Best regards
Ulrik
Offline
Hello Ulrik,
Welcome on board ! ![]()
"Normally" the protocol used by the Celestron CPC 1100 is (strictly) similar to the protocol used by the Merlin head. (same company = Synta)
Maybe that the Merlin head use only a simplified set of those commands ...
Could-you tell us what are the different commands that you have discoverered ?
Anyway, Fréderic, the father of Papywizard, is able to whrite a "plug-in" for Papywizard adapted to the Celestron ... so you will be able to use Papywizard directly without problems !
The fact that the communication is RS232 and not TTL make no differences, Papywizard is able to handle different Com's just by setting up the configurations paramaters.
Fréderic will certainly try to help you but is very busy at this moment !
In a first step, could-you tell us the difference in the commands that you have discover ?
Offline
Hello Claude,
thanks for you fast response!
There seams to be quite large differences in syntax. The reason we bought this head was because it was from Synta, I thought they would be compatible - but surprise ![]()
From what I have found out yet:
Commands don't start with : or end with \r. On the CPC they are usually a letter followed by numerical parameters
To read the position of the Merlin head you would use j + axis. On the CPC you send "Z" or "z" depending on what precision you want, you get a reply for both axis like 12AB,4000# or “12AB0500,40000500#”
To drive to position the merlin head uses command L<axis> G<axis>00 S<axis><pos> J<axis>
the CPC uses B<pos axis 1>,<pos axis>
So it's quite different. But you find more or less the same commands.
Here is a link to a protocol guide for my the Celestron CPC 1100 http://www.celestron.com/c3/images/file … mmprot.pdf
Any help from Fréderic or anybody else is of great value! I am happy to try some programming on this. But since I am not used to Python and not of controlling this type of hardware this means that I will have slow progress compared to Fréderic. But I also understand that Fréderic is busy and that adapting the software for more hardware types might not have his highest priority.
/Ulrik
Offline
Fréderic will be able to help you, I am confident !
Some small remark's :
The CPC 1100 has a Focal Lenght of 2800 mm with a aperture F = 10 ...
This telescope is oriented to astronomy not to photogarphy so the resolution is probably lower and 0,6 ° angle of view ...
I believe also that you will come out of precision of the CPC for terrestrial pictures ... + the fact that the material is very heavy and will be submitted to all vidrations ....
With the Canon EOS 5D Mark 2 (21.1 MP) and a Canon 800 mm F2.8 USM lens you will cover an angle of 2.1 ° angle
If you use a Canon 7D (18.0 MP) with the same objective you will get a coverage of 1.3 ° angle
In both cases, with the wide aperture of the Canon lens, you will be able to shoot at a much higher speed then with the CPC !!!
Just things that you must take into considerations before the final choice !
Offline
Hello,
I had a look at the protocol, and there is a major difference with other hardwares Papywizard support: the GOTO command acts on both axis. In Papywizard design, all axis need to be independant. As you know, I don't have much time, but I will try to find a workarround.
On your side, try to get familiar with Papywizard plugins classes. Have a look at the GigaPanBotPlugins and GigaPanBotHardware classes, as they are very similar to MerlinOrion ones, without all the workarround for the Merlin problems (alternate drive, which need threads). In the xxxHardware class, you define low-level calls. And in the xxxPlugins class, you define the GUI, with all needed params.
BTW, as a java/C++ developer, you won't have any problem to develop in python
Just cut/paste and fill in the gaps.
Feel free to ask for specific details.
Offline
Hello Frédric,
thanks for your help and your fast response regarding the protocol!!! I understand that you are busy. I am happy to try writing the needed code.
I will try to setup a development environment tomorrow. I usually use Mac 10.6 for development. Are there any pros or cons with that? Should I use Linux or Windows 7 instead?
I'll keep you informed about my progress. And don't hesitate to tell me if you find a workaround for how to handle the differences regarding the GOTO command.
Claude - thanks for your remark regarding using a 7D. We might try that. We have also done some testing with 2x extenders to gain more detail.
I just realized I wrote a wrong lens information. It's 800 mm f 5.6 - which is still quite decent for an 800 mm lens. http://www.the-digital-picture.com/revi … eview.aspx . F2.8 would have been nice though ![]()
We are not planning to use the telescope. Just the mount and this lens. Our tests show that we need the image stabilization in the lens even with a robust mount. We need really sharp images for this project.
I bought a Merlin mount as well, to use as a reference platform. But I haven't had time to test it yet. It's a nice peace of hardware.
/Ulrik
Offline
digitalfotografen wrote:
Hi, this is my first post here, I am really impressed with this project! I am not sure if this is the right place for this posting, are there a developers forum?
I have a client that wants to use gigapixel panoramas for inspection of bridges (searching for cracks in the concrete structure). We have performed some test with a manual tripod head (a geard manfroto head), a Canon EOS 5D Mark 2 and a Canon 800 mm F2.8 USM lens. The results are promising.
Now we would like to use a motorized head but the Merlin/Orion head used that is supported by Papywizard is probably to small for this setup. It's not only the weight that is a concern, wind is a serious problem in this environment.
My client recently bought a Celstron CPC 1100...
Any hints on how to proceed are appreciated!
Best regards
Ulrik
I guess this is a fairly high value project... given the cost of the CPC 1100 perhaps you might also consider the Rodeon VR robotic pano heads, or the Panomachine range?
http://www.dr-clauss.de/VRhead_EN.htm
http://www.vr-head.com/english/mk-panom … index.html
Whether any of these can overcome the wind challenge I don't know. The choice of tripod will also be a significant factor in overall stability.
Offline
Hello mediavets and thanks for you hints about alternative gear. I am a newbie when it comes to panoramic photography. There is a lot to learn.
We have looked at the Rodeon VR robotic, that is an alternative and I have been in contact with Dr Clauss. I looked at some different heads at Photokina (except that the large Roedon was not there). We also looked at the Gitzo Athena head which is interesting, but not so well adapted for long lenses. The CPC 1100 just seamed more mature and more robust, that why we decided to try that one first. If that fails I might get back to Dr Clauss.
Yes, a good tripod makes big difference. During our test I have been using a geared Manfrotto 400 head http://www.manfrotto.com/product/8374.3 … eared_Head It's an odd solution for panoramas, but we have fairly flat subjects so parallax error is less of a problem here.
We use tripods for video cameras and stabilize them with weights to keep them tight. And we still sometimes have problems keeping the camera steady. Most of the movement is in the tripod head.
10 m/s wind is regarded as decent weather
we are really happy when we have less then 5 m/s. We often have wind peaks at 15 m/s. The front lens and long lens barrel catches the wind. You also get quite nasty turbulence around bridges. We are trying to capture tine cracks in concrete at 150 m distance. This is best done when we have humid nights and the concrete the dries, this makes our choice of photo days correlate with cloudy and windy day.
So this is not as beautiful as the panoramas you other guys are shooting. But this is an interesting photographic challenge.
/Ulrik
Offline
Although I have nothing to add, I am following this conversation as I find it interesting. Ulrik could you tell us (or pinpoint on a map) where some of these bridges are? I'm just curious, and would love to see some of these final panoramas, as well as just a plain old photo of the bridge :]
Offline
Ulrik, to develop under MacOS, you will need to compile PyQt, which is not really simple. If you don't want to bother with this, just switch to linux, where anything is included. Or Windows, but you will have to download and install stuff yourself.
Offline
My client is Öresundsbron - the bridge between Malmö (Sweden) and København (Copenhagen, Denmark). http://en.wikipedia.org/wiki/%C3%96resundsbron
I promise to show some panorama samples later. Here are two images from "a day at work". One is from a pylon top, 200 m above the sea level with a view towards København.
The other is just below the railway tracks, 59 m above sea level. The view is towards one of the pylons, this is the longest span, almost 500 m. All other spans are 150 m. Most of my panoramas will be shot from this type of position but at 150 m distance, shooting from one column to the next. Images of pylons are shot from the same distance using a suspended platform, hanging under the bridge.
Frérdric, I'll set up a Linux development system then.
Last edited by digitalfotografen (2010-11-19 07:00:56)
Offline
Frédric,
I have a questing regarding the simulator. How do I use it?
I have installed Ubuntu on an old laptop. The source has been downloaded and I can start Papaywizard via papywizard.sh.
I have started to copy and edit files. I call the new driver NexStar since that is the protocol name. I used gigaPanBot as template for all files. I am slowly starting to understand the code. The code seams clean and easy to understand - even for a first time Python user.
I have added the following files and edit class names
papywizard/hardware/nexStarHardware.py
papywizard/plugins/nexStarPlugins.py
papywizard/hardware/nexStarHardware.py
papywizard/simulator/nexStarSimulator.py
papywizard/simulator/nexStarCommandDispatcher.py
I have edited he following to add/register my new files/classes
papywizard/scripts/main.py
papywizard/scripts/simulator.py
Papywizards starts ok and I am able to select my new plugin. I haven't tested with real hardware yet. I though testing with a simulator first might be a good start.
I found your simulator and have added files for NexStar there as well. Before I start to edit the simulator files to create a NexStar-simulator I would like to test the simulator with one of the existing plugins. I have done some tests starting the simulator with
./simulator -g merlin -c serial - /dev/ttyS0
But I am confused on how to get the simulator to listen to a port and work with Papaywizard. It starts but it doesn't respond to papywizard when I choose "Connect".
Please Frédric - Some hints on how to use the simulator would be great.
Thanks!
Ulrik
Offline
This is a good idea to use the simulator. In fact, the best way is to first code the simulator, to reflect the hardware behaviour, and then code the plugin. This is some sort of extrem programing ![]()
Just launch simulator.sh without any params: it will listen on localhost, port 7165. Then, in Papywizard, open the Hardware -> Plugins menu, and choose the ethernet driver for you plugin, for both axis, and shutter (but does this head have a shutter contact?). Then, in the Driver tab, use 'localhost' as address (or 127.0.0.1), and 7165 as port. You should then be able to connect...
If you should the serial line in the simulator, then you will have to use another one in Papywizard, and connect both serial lines with a null-modem cable.
Feel free to ask if you have problems (but I will be very busy this week-end, and will only be able to answer you late in the evening).
Offline
Hi Frederic,
does this mean we will have more choice in the hardware to use Papywizard ? cos, I can't locate a Merlin here in Australia, I have now tried east and west coast, with no supply
thanks
Henrik
Offline
Ouch that Celstron CPC 1100 is a bit expensive, especially since I don't need the scope!
:-)
Henrik
Offline
You can try to sell the telescope alone on ebay...
Offline
Henrik,
Merlin in Australia ? ![]()
http://www.myastroshop.com.au/products/ … =MAS-030K2
http://www.ozscopes.com.au/multi-purpos … cking.html
http://www.telescopes-astronomy.com.au/ … celist.htm
See Telescope Mounts inc Tripod, end of list "SWMULTI-MNT Multi Purpose Program Mount, inc. alloy tripod . Star Tracking too $531AUD"
Offline
Frédric,
thanks for your hints regarding the simulator. I have got it to simulate the Merlin head ok via Ethernet to local host. I will now continue to write the NexStar (CPC1100) simulator.
I have successfully connected with real hardware. NexStarHardware.init successfully executed stop motor and get firmware version. So I am making some kind of progress...
Offline
digitalfotografen wrote:
Hello mediavets and thanks for you hints about alternative gear. I am a newbie when it comes to panoramic photography. There is a lot to learn.
We have looked at the Rodeon VR robotic, that is an alternative and I have been in contact with Dr Clauss. I looked at some different heads at Photokina (except that the large Roedon was not there). We also looked at the Gitzo Athena head which is interesting, but not so well adapted for long lenses. The CPC 1100 just seamed more mature and more robust, that why we decided to try that one first. If that fails I might get back to Dr Clauss.
Yes, a good tripod makes big difference. During our test I have been using a geared Manfrotto 400 head http://www.manfrotto.com/product/8374.3 … eared_Head It's an odd solution for panoramas, but we have fairly flat subjects so parallax error is less of a problem here.
We use tripods for video cameras and stabilize them with weights to keep them tight. And we still sometimes have problems keeping the camera steady. Most of the movement is in the tripod head.
10 m/s wind is regarded as decent weatherwe are really happy when we have less then 5 m/s. We often have wind peaks at 15 m/s. The front lens and long lens barrel catches the wind. You also get quite nasty turbulence around bridges. We are trying to capture tine cracks in concrete at 150 m distance. This is best done when we have humid nights and the concrete the dries, this makes our choice of photo days correlate with cloudy and windy day.
So this is not as beautiful as the panoramas you other guys are shooting. But this is an interesting photographic challenge.
/Ulrik
Hi Ulrik!
The "fat" Rodeon should fix your problems:
http://www.dr-clauss.de/VRstation_DE.htm
Regarding to stabilize the camera you should think about a gyro-stabilizing like this ones:
http://www.ken-lab.com/
A combination of two or three of them (on all axis) should keep the camera rock-steady even at high wind-pressure.
It´s quite expensive but works fine - there´s nothing better on a non-military or non-sciencetific
level.
Have a look at their rigs for helicopter use of 35/70mm movie cameras . .
best and good luck, Klaus
Offline
Hi Klaus,
Thanks for your advice. Using a gyro seams interesting.I know about their existence but hadn't thought about trying them for this purpose.
Have you any experience of using a gyro together with a motorised pano head? Does it work well?
I know that they have one of those gyros at our local camera rental, it could be interesting to rent one and try.
/Ulrik
Offline
digitalfotografen wrote:
Hi Klaus,
Thanks for your advice. Using a gyro seams interesting.I know about their existence but hadn't thought about trying them for this purpose.
Have you any experience of using a gyro together with a motorised pano head? Does it work well?
I know that they have one of those gyros at our local camera rental, it could be interesting to rent one and try.
/Ulrik
Hi Ulrik!
I didn´t use it on a pano-head - just with a professional movie camera.
It worked very well - but maybe it´s useless by wind . . because it can be high frequent and uneven.
I suggest to rent and try it.
best, Klaus
Offline
Hi everybody
I am making progress with the driver. I can now control the head via the jog buttons i Papywizard and I get correct angle readouts.
I now have two problems to solve:
1) Papywizard is designed to control each axis independently. The Goto-command for this head is designed to operate both axis separatly. It's a bit tricky to find a solution without using global variables and to avoid race conditions.
2) I can't get the head to accept Goto-command. I have tried both "b" and "B" with different parameters, which is the commands for AZM-ALT Goto. The manual tells that the RA/DEC Goto (R & r) commands are only accepted after alignment. I suspect this is also valid for the AZM-ALT Goto. I haven't fully verified this yet, but I have done some tests by sending this as a hardcoded command in the init method of axis 1, and I the head didn't move.
I will now try a workaround. My plan is to implement my own single axis Goto in the driver using the same commands as for Jog and Read. This would solve both problems. I can operate both axis in parallel, and readout of encoder is mainly limited by the serial port speed of 9600 bit/s.
It will probably not be as accurate and fast as the heads Goto, and it will raise the load on Papywizard. It actually means writing a servo controller algorithm. A bottle neck is the readout speed which will cause some delay.
I will continue work for a few hours today, then I will have a few days break to work on other projects. But thanks for all comments, questions and suggestions on this thread.
P.S. I am am slowly starting to adapt to the programming language that Papywizard is written in. Python stills sounds like Norwegian to me. I am Swedish, I can communicate with my Norwegian neighbours, but often with great confusion. You know, In Swedish the word "rolig" is "funny", a joke is "roligt". In Norwegian "rolig" is translated to "calm an quiet". Swedes would use the word "rolig" at the bar, Norwegians use it on the graveyard. But ones you know the false friends of a language it get less confusing. (This is just to be seen as a metaphor, not a way to have "roligt" on the behalf our our nice neighbour country. D.S.
Offline
language: thats because norwegian is old danish :-)
Henrik
a Dane down under!
Offline
Yep - and Python was named after the film "Monty Python Flying Circus"...
Offline
Good job, Ulrik!
Your idea to make the external closed loop is good, until we find a workarround to use the GOTO function. To do that, you can have a look at the MerlinOrion plugins, wich exactly does that when the alternate drive is enabled.
Offline
Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
|
CHOOSING KOLOR Why choose Kolor? Which solution to choose? Download a trial Where can I buy? Education |
SOFTWARE Autopano Pro Autopano Giga Panotour Panotour Pro XnView |
ACCESSORIES Training DVD Panobook PROJECTS Paris 26 Gigapixels Yosemite 17 Gigapixels |
COMMUNITY Forums YouTube channel Google+ |
COMPANY Blog About Kolor Resellers Contact Visit us |
PRESS Press center Press review TOOLS My account |
