Hello, I'm about to start working on a project that requires an
electronic system be controlled wirelessly through the internet. I
need to develop the software (with a GUI) which you can access from the
internet that would enable the remote control of the system. the
system utilizes pulse width modulation to control a small positioning
device. I basically have 2 questions.... 1) can anyone recommend a
microprocessor that would be suitable for this task and 2) what
language would be best for this? JAVA? C++? or an application like Lab
Certainly, with the limited playing I've had with LabVIEW, your GUI
will be more easily made there. But I haven't gotten to the part where
LabVIEW does web interfacing yet.
The problem is there is no one microprocessor that can do all you want
(afaik). The remote system will have the GUI on it (unless you want to
make application serve up a web page with controlls on it). And almost
no unit that can do webserving also does PWM outputs. Seems as a
minimum you are looking at two microprocessors at the end effector.
Maybe a Mini-ITX for the webserver/internet connectivity and a SSR
(Serial Servo Controller) for the servo controller.
Randy M. Dumse
Caution: Objects in mirror are more confused than they appear
Have a look at the x-port line of products (http://www.lantronix.com /). They
have a line of wireless boards with built in webserver and a serial port for
communication.with your uC any one ou want.
Home of the Atmel based UDP mobile web cam http://www.planet-ian.com
All mails scanned with av-filter.pl (F-Prot / perl)
On Thu, 18 Jan 2007 07:45:28 -0800, panfilero wrote:
Many MCUs can do PWM but you will want to control your device at a much
higher level if it is networked to a GUI...The language I use for my
unmanned systems is typically C/C++ on embedded PC104 processors running
linux. I've experimented with JAVA and C#.NET operator console GUIs but
always seem to come back to C++ for reasons too numerous to mention here.
The questions I have about your project are whether you will require
real-time control of your device.
EtherNet + wireless EtherNet = real latency problems
I'm curious why you say this... What kind of latency problems, and why?
Jon Hylands email@example.com http://www.huv.com/jon
Project: Micro Raptor (Small Biped Velociraptor Robot)
With the radio path (or any other unreliable transfer system) you can
either have a
a) realtime, unreliable connection
b) reliable, but non-realtime connection (e.g. retransmissions)
but you can not have guarantied reliable and realtime connections.
Especially WLANs etc. working in the 2.45 GHz ISM band can suffer from
all kind of devices, including the microwave oven.
I am a Java programmer by profession. Robotics is just my hobby.
I like Java very much and I've done several monitoring control
applications, using Java.
1) If we are talking about high level of the application (general
design of the application, middleware, etc.) then I can recommend Java.
A lot of proven technologies based on this language.
I use Java/SWING for desktop application and for applets.
Java is designed for network projects and it is good for this.
Also there is a way to compile Java+SWT (IBM GUI library) using GCC/GCJ
to native code (to EXE file, if you use Windows).
But SWING GUI from SUN is much more reach API.
2)If we are talking about microprocessor part of the system, then most
suitable language is C/C++.
(Also you can use assembler).
Java is not so good in low level, where you program the processor
itself (because of several reasons).
The only exception is J2ME - special version of Java for small
devices, like cell phones.
I use this kind of Java for my hobby project, where you can drive
on-line your small robot with cell phone on a board and see - where
the robot is going.
3) Java is free and there are a lot of Java-based technologies, which
you can use for free - Tomcat JSP server, JBoss J2EE server, etc.
4) Java has a really big community. You can always find examples and
tutorials - how to do this or that.
And of course, you can ask me about Java - where to start and how to
Sounds like you want a micro with 802.11, a network stack, some kind of http
web server for the GUI, plus the usual embedded peripherals for PWM. You'll
want some kind of hardware counter/timer array to generate the pulse stream,
since the processor will have to handle network interrupts. You might look
at one of the ARM7 embedded controllers, plenty of memory, timers, and high
speed serial ports. Use one of the serial ports to talk to a LAN module for
802.11b/g, such as the Lantronix Xport series. There are plenty of
resources for ARMs, such as GNU C compiler (with Eclipse IDE) and the
FreeRTOS operating system.
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.