|
A completely different idea...
It might be neat to have something like the lego RCX. The RCX allows event driven programming. A simple default code, which teams can use straight out of the box could easily be created.
Plus, if you don't want to use the supplied drag and drop GUI programming language, you can port over to BrickOS, which is an embedded Linux kernel.
Then, you just program in C or assembly, as you like.
As far as the concern many have raised about the current system is "good enough/fast enough."
We have had to mechanically slow down some sensors and actuators in order to allow us to control them.
We were running up against the "basic run error" limit with our control cycle this year, due to the sensor processing for autonomous code.
We have not been able to run anything fancier than a PI controller because of the unreliable cycle time and slow processing.
The pBasic can be "faked out" to program subroutines. You just have to use assembly style register passing. You could probably create a stack if you were really clever. However, the limit on variable space makes this extraordinarily difficult.
The fixed point, non-negative, 8 bit math is perhaps the most severe limitation. I cannot begin to say how long it took to program and debug a simple proportional control routine the first time. What should have been one line of code turned into about a week's work + 20-30 lines of code. Most of this code was spent with shifting and scaling.
The other down-side to the current pBasic is that it is not transferrable to anything else. Wouldn't it be better to use a more conventional language such as C, where the programming skills developed would transfer?
|