RR Rated M For Mature
| WATCH | 5 pages [ << < 1 ( 2 ) 3 4 NEXT >> ] | 22495 views | POST REPLY |
| Fast Lad Performance | . | Thunder Power RC | . | Mikado Modellhubschrauber |
|
. |
|
. |
|
Radio - Servo - Gyro - Gov - Batt>Decoding Futaba PCM 1024Z |
| Angelos | UAV receiver mode Unmanned Aerial Vehicles require a device that allows the onboard computer to take control of the servos. The same device also provides a way of overriding the onboard computer and taking manual control of the model. Typically the way this is done is feeding all receiver servo signals as well at the computer generated servo signals into an electronic switch which will select one of the two signal sources. This switch in most cases is controlled by channel 9. This allow the UAV operator to take control by changing the state of channel 9. My proposal for the UAV receiver mode is as follows… The receiver produces all servo pulses CH1 to CH10 in normal mode. In UAV mode the pins for CH9 and CH10 are reconfigured and become an RS232 port. When the receiver is configured for UAV mode, it internally checks the state of the received channel 9 and determines which data source will be used to generate the servo signals. If channel 9 is off then the PCM data will be used to generate the servo pulses for CH1 to Ch8. If channel 9 is on then RS232 data will be used instead. This RS232 data are generated by the onboard UAV computer and are fed directly into the receiver. Thus no additional devices are required between the receiver and the servos. As a bonus the receiver also produces RS232 data from the incoming PCM signal which can be read by the onboard computer. This also means that the receiver could be connected to your home PC to provide controls for a flight simulator. This could be done wirelessly since the receiver will pick up the transmitter signal, or you could have a DSC cord between the TX and the RX. | ||
| 11-06-2003 Over year old. |
|
| FredericG | Angelos,Some people thought it was a good idea, others told me it would be better to buy multiplex that has these features "a decade ago"
I did some more research and found your project. So on top of the of-the-shelf product there will be soon your solution...
I am not sure what I will do, but for the time being I am interested in
One question for everyone… why do you want to decode PCM1024Z? Just to say you have done it or do you have a particular use in mind? | ||
| 11-06-2003 Over year old. |
|
| FredericG | Yesterday I connected my radio to the line-in of my sound-card. I could see that a signal comes in but the downloaded dll happily crashes.
Frederic | ||
| 11-06-2003 Over year old. |
|
| w.pasman | FredericNice to try to get that running.I'm busy figuring out how this all fits together, as it looks now Rother must be mistaken or he is talking about another (old??) Futaba protocol. Then the developer's code, the quote you found quote plus Angelos' should bring us quite far. | ||
| 11-06-2003 Over year old. |
|
| w.pasman | FredericAngelos is talking about a computer inside the helicopter, that is BEHIND the receiver, completely taking over control. I don't think he is aiming at putting more control code inside receiver for fancy channel behaviour, he just uses an existing switch to toggle the channel 9. The mail you quoted is excellent! This is the only place so far that details the structure of the packets. And even more, it describes how the ECC is created, what the values are for every bit. It even contains a note on the location of channel 9 although that one seems buggy. I'm working on a nice figure that puts all values we found so far together in a nice overview. Most data is there now, and things fall together nicely. Only the source from the autonomous helicopter site has still to be reverse engineered. I think we're getting close to checking all we found and figuring out the last bits. There the propro program or something similar might come to good use. Unfortunately I don't have a C compiler on windows, but maybe I will try to compile the code on my macintosh. The only thing I need to figure out is how I read out the mic input, the PC code obviously won't work for that! | ||
| 11-07-2003 Over year old. |
|
| w.pasman | I forgot to post this, but here is the improved version of the annotated propro code. I think I have all comments in place but I did not check everything over again, so maybe there's still some inconsistency in my comments. In my head it's clear now so I go further
| ||
| 11-07-2003 Over year old. |
|
| FredericG | I have compiled a win application that should read the input on the line-in or mic input (check with audio recorder to see if something comes in) and dump it in a file.
Question is: how do I add attachments to send it to you?
Frederic | ||
| 11-07-2003 Over year old. |
|
| w.pasman | HiI posted a first version of a report on the PCM1024Z format on my website http://graphics.tudelft.nl/~wouter/pcm1024z.pdf I think this nicely lines out what knowledge is available on the web now, and what we have to figure out. I'm waiting on your comments!Mmmm one extra section could be a summarization of the things to figure out... | ||
| 11-08-2003 Over year old. |
|
| w.pasman | Hi FredericSorry for the late reply, was too busy We PM-ed already on this.
Great that you got that working, that may become very handy. For the moment I think I prefer to see samples instead of pulse times, I need to visualize things and pulse times are hard to read. I will try using my audio sampler, should work straight away on my macintosh. | ||
| 11-08-2003 Over year old. |
|
| FredericG | Hi Wouter,Very nice document, I will study it closely...For the moment I think I prefer to see samples instead of pulse times, I need to visualize things and pulse times are hard to read. I will try using my audio sampler, should work straight away on my macintosh. | ||
| 11-08-2003 Over year old. |
|
| G.Man | I'd be happy to decode the manual let alone the signal![]() Don't Email me as I wont reply - PM Only (spam countermeasures) | ||
| 11-08-2003 Over year old. |
|
| Angelos |
This might give some interesting problems to the servos, as smooth interpolation would be hampered by such 'fake' pulses. | ||
| 11-08-2003 Over year old. |
|
| Angelos | new position=old position + diff_array[pcm_delta]
what's inside diff_array is for you to work out new position=old position + pcm_delta - 8 | ||
| 11-08-2003 Over year old. |
|
| FredericG | I have the impression you are pretty close; I suppose analyzing real samples can easily fill the blanks.Here you could perhaps use your setup that you used to measure latencies. You could apply a step to one of the channels. With some luck, this gets first reflected in a differential value. In the next frame the absolute value will be available. Different step amplitudes should give you different points in the "diff_array". Perhaps when the step is too big there is longer a relationship like "new position=old position + diff_array[pcm_delta]" ...
FredericI disagree with the above. | ||
| 11-08-2003 Over year old. |
|
| Angelos | FredericG,The differential corrections were the hardest bit to do. If they are not right the servos move jittery. I worked out the values with a 35000GBP (US$58000) LeCroy scope that we have at work. There are cheaper ways doing it but since the scope was available it was the simplest option for me. I wrote a few simple scripts for the scope (yes it has a build in win2000 PC in it) so that it simultaneously measures the pulse from an original PCM receiver and from my decoder. The scope plotted on the screen the error between the two pulse widths as I was moving the joysticks. Then the graph was level at zero, I knew I had the right values. | ||
| 11-08-2003 Over year old. |
|
| w.pasman | Hi allThanks for all the comments on my report so far. I'm gonna check them in detail One answer is easy> What does your “radio sampler” look like? ![]() | ||
| 11-09-2003 Over year old. |
|
| w.pasman | DUHHH don't they support tiff's here | ||
| 11-09-2003 Over year old. |
|
| w.pasman | Hi AngelosHa great to hear that, I was already amazed by this and had a note on that in the doc. About figuring out the values, yes maybe we have to go your way... I prefer another way because I don't like comparing analog values and trial and error. Let's rethink the options. | ||
| 11-09-2003 Over year old. |
|
| Angelos | By the way… it is not really trial and error. All you need is a microcontroller to measure and hold the pulse width of two consecutive pulses and also keep a record of the 4bit differential data. I know it is a lot of effort to do that but who said decoding PCM1024Z was easy!I prefer another way because I don't like comparing analog values and trial and error. Let's rethink the options. | ||
| 11-09-2003 Over year old. |
|
| FredericG | Hi Angelos, Wouter,I still feel that my proposal could provide an easy way to find out an important part of the “diff-array”. Am I terribly wrong? Suppose we have 3 successive frames, 1, 2 and 3. A (small) step was applied between the generation of frame 1 and 2 for a given channel. For that channel frame 1 and 3 contain the absolute values A1 and A3 and frame 2 contains the differential value D2. Then should A3 = A1 + diff_array[D2] Frederic | ||
| 11-09-2003 Over year old. |
|
| WATCH | 5 pages [ << < 1 ( 2 ) 3 4 NEXT >> ] | 22495 views | POST REPLY |
| Futaba-RC | . | Boca Bearings | . | XHELI.COM |
Now Free Admission! |
. |
|
. |
|
Radio - Servo - Gyro - Gov - Batt>Decoding Futaba PCM 1024Z |
| Print TOPIC | Advertisers |
Tuesday, May 22 - 5:56 pm - Copyright © 2000 - 2012 runryder.com | email | link to rr | START HERE | NF