Troy,
You are hitting on something that I've been working on for quite
some some. (for personal - not GaTech - projects).
My conclusion has been that I should build around an io subsystem with
an embedded processor (all fpga based of course) that I can talk to over
Ethernet.
This lets me leverage all the consumer tech with its regular performance
and power improvements to run high level and gui stuff while still being
able to do serious hard real time work in a no OS environment. The top
level consumer platform is really just disposable.
What I am describing is actually a lot more than theoretical - I've
built many automated systems and robots with my first generation
hardware, and just hit timing closure on the second generation hours
ago. What I have described is a bit simplified, but the point is this
design approach just werks!
As far as this open graphics stuff goes, I am still convinced that the
problem of free software support is disappearing as graphics hardware
becomes general purpose.
One example: I have built a mobile robot platform based on the kinect2
that runs ROS and has a Haswell cpu on an itx motherboard. The freenect2
drivers (as compiled) utilize the gl stack for hardware accelerated
kinect2 data processing. So this is a real software stack utilizing
entirely open software for robotics that uses the internal Intel GPU. I
do the entire mapping & localization thing based purely on the kinect2
data. I plan to move this code over to the opencl paths using beignet,
again fully open source. I have certainly seen the order-of-magnitude
(plus) performance improvement in going from purely cpu to gpu
processing during that project.
Anyway: Your application seems so similar to mine that I can only
recommend not getting too hung up on open hardware for the user
interface. I would think that most of your value is going to be created
in the low level engineering and high level management / front-end code.
So use whatever disposable platform you want for the front-end that
gives you the most bang for the buck. Of course put pressure on the
manufacturers by picking the one that is most open that fits your needs. :)
Any platform that gives you a serial, ethernet, or wifi, or I suppose
even bluetooth serial (have not tried) can get you interfaced to some
embedded system handling hard real time control loops and low level io.
These high-level interfaces are not going anywhere, so you are not
tying your engineering to any given platform. That being said, I
personally try to avoid USB where possible.
-John
Troy Benjegerdes wrote:
Yes, because I'm not going to buy a GPS guidance system for
my tractor, combine, or agricultural imaging drones without
having a long-term path to be able to replace the silicon in
the display console with something I have the source HDL for.
If I do a horribly subjective estimate based on:
http://download.intel.com/pressroom/kits/IntelProcessorHistory.pdf
I suspect we could get somewhere between 75 and 150mhz, which
should be plenty to do better with some peer reviewed software
than what google maps with all its java overhead, random crashes,
and binary blobs can do on my phone.
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)