Which effects does an increased PPM cycle time have?

If you've been building electronic bits or modifying stuff you've bought then tell us all about it here. A good place to discuss the installation of 2.4GHz DIY modules too.

Which effects does an increased PPM cycle time have?

Postby JensR » Sat Sep 10, 2011 9:56 pm

Hello all!

For a non-flying, not speed-sensitive project I want to use an Arduino microprocessor together with a 2.4GHz module (from a Turnigy 9x V2 and/or a Corona DSSS module).
I've read up on quite a bit and it seems this should work easily enough. (Famous last words...)
However, I've come across one potential obstacle: For my specific layout I cannot achieve the 20ms cycle time (50Hz frequency) of the PPM.
I should be able to achieve 40ms.

My question: Which effect does this have on range (non-critical for me as 50m is more than enough), servo speed (somewhat important), servo strength (very important) and overall responsiveness of the radio (non-critical)?

Thanks
Jens
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby ergocentric » Sun Sep 11, 2011 1:22 am

the receiver or transmitter module may not sync if the frame is too long
no effect on range
reduced holding power for analogue servos
increased servo response time

can't you use a dedicated microcontroller to build the PPM frame? I've seen it done with dedicated IC's, microcontrollers and even separate transistors
unconcerned but not indifferent - MAN RAY
User avatar
ergocentric
 
Posts: 350
Joined: Sat Jun 05, 2010 9:45 pm
Location: small town, Ontario, Canada

Re: Which effects does an increased PPM cycle time have?

Postby JensR » Sun Sep 11, 2011 1:45 am

Thanks for the reply.

I'm just starting out with this, so I have no idea what more specialised tools are available. I do have the Arduino Mega 1280.

I have 16 channels to transmit, spread over two 8-channel modules with 8-channel receivers.
So, if I start one PPM pulse for module 1and then for module 2, I get a cycle time that is at best 40ms.
I hoped that the receiver must be able to sustain one lost PPM signal without ill effect.
Maybe if I alternate modules and set servo 1 on module 1, then servo 1 on module 2, then servo 2 on module 1 then servo 2 on module 2....
This would be rather complicated as I need to set each channel's pulse both high and low, so if the two channels on the two modules overlap, this would mean a lot of "delay microseconds". I don't know (yet) how fast the Arduino can do this. Maybe it's not an issue at all and just a "few" lines of code...

If you have any other idea/link, I'd be very grateful :)
Jens
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby ergocentric » Sun Sep 11, 2011 3:41 am

The arduino should be fast enough, just googled 'arduino ppm generator' and got loads of hits, if all else fails you could use a second microcontroller or write a PPM library for processing two pulse streams at the same time
unconcerned but not indifferent - MAN RAY
User avatar
ergocentric
 
Posts: 350
Joined: Sat Jun 05, 2010 9:45 pm
Location: small town, Ontario, Canada

Re: Which effects does an increased PPM cycle time have?

Postby JensR » Sun Sep 11, 2011 3:54 am

Yes, I found quite a few, too. But none of the sources I found do two separate PPM streams. A second MC would be a possibility, but mixing and flexibility will be better with one.
Luckily, I found that I can directly access the digital out pins - so quickly that I indeed should be able to jump from one module to the other without affecting servo position.
#phew#
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby JensR » Fri Sep 16, 2011 9:04 pm

Could anyone explain how a 14-channel PPM module maintains performance?
http://www.corona-rc.com/coproductshowE ... icleID=127

This would need to be at least 14*2ms+3ms ~= 30ms cycle time.
Is this small enough an increase from 20ms to be negligible?
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby rogueqd » Fri Sep 16, 2011 10:26 pm

Going back to my First Person Shooter days, even 250ms was playable once you got used to the slight lag. 250ms is still 4 updates a second, and with a FPS you needed much more twitchy accuracy that you do flying a plane, except maybe landing in gusty winds.

20-30ms is so fast that only the most advanced 3D heli pilot would ever notice the difference, and even he probably wouldn't.
rogueqd
 
Posts: 234
Joined: Thu Mar 10, 2011 1:52 am
Location: Northern beaches, Sydney, Australia

Re: Which effects does an increased PPM cycle time have?

Postby JensR » Sat Sep 17, 2011 4:01 pm

To clarify: As I said, I am not worried about speed or latency.
For my model earthmover, these are non-issues.
I am however worried about the effect on holding torque that has been mentioned.

And the 14 channel radio should have quite a bit of an effect on the servo performance, I would think - but I couldn't find anything.

Ideally, I would like a table of torque vs. PPM frequency for digital and analog servos ;)
But realistically, a rough estimate of performance loss would be very helpful already :)
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby JensR » Mon Oct 03, 2011 7:27 pm

FWIW:

I have heard back from Rafal (radioclone.org) that the 14 channel module simply has a longer pulse length and hence increased latency. He also said that most radios have latency of more than 20ms or 22ms.
I have just checked the trainer port of my FC-16 and the time between pulse end and pulse start seems to be around 10ms.

To see the effect of the additional time between end and start on servo performance, I changed my Arduino code to vary the wait time between pulse end and pulse start.
Shortest possible time due to computational constraints is around 4ms for a cycle time of around 20ms.
The longest time I set it to was 4ms+100ms, giving a frequency of roughly 8Hz.
This gave very choppy servo response, even when the stick was moved slowly.
However, even my analogue servo was keeping its holding force very well. In fact, with my hand/fingers, I could not detect a reduction.
One of the "digital" Hobbyking servos showed jittering at this low frequency.
But at a wait time of 40ms on top of the 20ms pulse, I could only detect a _very_ slight lag of the analogue servo.
I regard this as absolutely sufficient for my purpose of slow-moving land vehicles.
I can make no recommendations for aerobatics or helicopters and also cannot take any responsibility if someone experiments with increased PPM latency and something bad happens...

Cheers
Jens
JensR
 
Posts: 55
Joined: Sat Sep 11, 2010 3:41 am
Location: Bath, UK

Re: Which effects does an increased PPM cycle time have?

Postby RCModelReviews » Tue Oct 04, 2011 1:03 am

The old 1mS-2mS pulse width and 20mS frame rates were chosen mainly because of the limited bandwidth available with the old AM/FM RC gear.

Now that we have 2.4GHz and microcontroller encoder/decoders, there's no reason why a much shorter pulse and frame could not be used -- hence those hi-pulse-rate tail rotor servos and gyros.

Of course with native 2.4GHz gear there is no PPM frame and pulses - just a set of numeric values that are transmitted so its a moot point.

I've been trying to lobby FrSky to make a "100% digital" version of their DIY system so that it can be installed into the 9X radio with reflashed software to deliver the channel data in numeric form. This would slash latency and (in theory) allow much better response and precision. It would make FrSky the *only* sensible upgrade option for the Turnigy 9X.

By doing this they could also introduce channel-grouping for those guys flying CCPM helis and the like and add auto model-load to the 2-way versions.
RCModelReviews.com, just the facts.
User avatar
RCModelReviews
 
Posts: 2120
Joined: Tue May 04, 2010 3:40 am

Next

Return to DIY Projects and Hacks

Who is online

Users browsing this forum: No registered users and 5 guests

cron