HARD REAL TIME PYTHON
mu at problemlos.ch
Wed Oct 8 02:55:13 CEST 2008
Am 08.10.2008 um 06:59 schrieb Hendrik van Rooyen:
> "Blubaugh, David A." <dblub....elcan.com> wrote:
>> I have done some additional research into the possibility of
>> Python for hard real time development. I have seen on various
>> where this has been discussed before on the internet. However, I was
>> wondering as to how successful anyone has truly been in developing a
>> program project either in windows or in Linux that was or extremely
>> close to real time constraints? For example is it possible to
>> develop a
>> python program that can address an interrupt or execute an operation
>> within 70 Hz or less?? Are there any additional considerations that I
>> should investigate first regarding this matter??
> If I run it between 2 PC's, faking the I/O by writing to a disk,
> I sometimes get up to 250 such "pings" per second. Going full
> duplex would pass a lot more info, but you lose the stimulus-
> response nature, which is kind of nice to have in a control
> Its not real time, but its not exactly yesterday's stuff either.
OK, this is gives an impression of SPEED.
> We have also used python to do the HMI for an Injection
> Moulding machine, talking to a custom controller with
> an 8031 and an ARM on it via an RS-422 link running at
> 115200 - and the python keeps the link fully occupied
In your application the REAL-TIME requirements
are isolated and implemented in the custom controller.
And the HMI which has to be fast enough (SPEED, not HARD-REAL-TIME)
you implemented in python probably on a standard hardware/OS.
That is exactly what I suggested the OP to consider.
> So don't be afraid - go for it!
Unless we do not know more details of the requirements
for the OPs application I think it is a bit early
to give this advice, althoug Python is a great
programming language in many aspects.
The only requirements we know of the OPs program project are:
- able to address interrupts (python can)
- execute an operation within 70[Hz] or less (python can)
But we do not know what operation has to be done at this
My concern is to point out, that the terms
SPEED and REAL-TIME and HARD-REAL-TIME
should not be misused or misunderstood.
Kurt Müller, mu at problemlos.ch
More information about the Python-list