Develop an IP network-based remote control system that consists of SiLabs board and a desktop computer communication using a protocol from TCP/IP protocol suite. The program for desktop should be written in C or C++ and should use a Joystick as its input device. It should control components of the SiLabs board as follows: The throttle should change PWM frequency in the range from 10Hz to 1kHz. X- and Y-axes should control PWM signals from 0% to 100% with the middle joystick position corresponding to 50%. The PWM signal should be fed to red and green LEDs that are already provided on the SiLabs board. The fire button should switch on/off the big green LED. The big green LED should light if the button is pressed and switch off when it is released. In case communication between the SiLabs board and the remote controller is severed (no connection or no Ethernet/DHCP) the board should keep the current settings for another five seconds and then return to 50% PWM and to big green LED off. Suggested means of communication: either UDP server running on the SiLabs and UDP client on the remote controller OR a Web server on SiLabs and a TCP program emulating a Web browser submitting a Web form on the remote controller. In each case the interrupt should have a software counter that is reset when a new command is received. If the counter overflows then default settings are resumed.
Check with the instructor if he can stop by and see your demo first. Set up the demo of your program in the computer lab and show it to your instructor. In case the demo is approved please pack/compress all files used in the project into one ZIP file and send that file via e- mail to the instructor at olekmali at bradley.edu. Please set the message subject to: tnp-fin.
Thank you.