#Robot - ThingML
The goal of this project was to use ThingML to generate software for a small remote controlled robot.
##Hardware
- Arduino Yùn Board (This board contains both a micro processor MIPS (Atheros AR9331) refered from here as CPU, and a micro controller avr 8 bits (ATmega32u4) from refered as MCU.
- Two wheels robot. (The wheels are driven by two DC motors with two H bridges)
- Battery
##Configuration
##Compile ThingML files
- CPUForwarder.thingml can be compile with the ThingML to Posix compiler.
- CPUForwarder.thingml can also be used by the ThingML mock up generator to generate an html/js websocket GUI to remote control the robot.
- MotorController.thingml can be compile with the ThingML to Arduino compiler.
##Requirements
##Compile the c files for MIPS See Arduino Yùn Cross Compiler (ayxc) docker contrainer
Or use the pre compiled program. ###To compile ThingML files See here.
###To run the generated code See the installation of libraries here.
##Deployment
- Deploy MotorsControllerCfg.pde on the MCU.
- Deploy (with
scp
) CPUWSControllerCfg on the CPU. - Log on the Yùn (with
ssh
) and run./CPUWSControllerCfg
- The generated Mockup (and its css) can be hosted on the CPU, or preloaded on your phone's web browser (or just open it on your PC's web browser)