start about me portfolio resume gallery links contact    

PocketPC robot

Historical background

This was a project related to the “Autonomous systems and mobile robots” course. I think of it as an important one because this project of a robot system involved scientific approach in greater extent than before, such as closed-loop control, signal processing, real-time issues and robot motion algorithms.

Project info
ForStudent project
Time-frame2006
Co-authorsNA
Size6835
KeywordsC#, .NET Compact Framework, Windows Mobile, ARM7, IrDA, RS-232, UML, Visual Studio, Altium Designer, 32feet.NET
StatusFinished

Description

Idea

Project’s idea was to boost the testing process of control algorithms for mobile robots. System consists of a microcontroller and a PocketPC based handheld computer. The microcontroller is responsible for low-level real-time tasks and the PocketPC brings required performance and flexibility to the developer.

Details

Real-Time Subsystem

The real-time subsystem is a firmware on LPC2148 ARM7 microcontroller, which is responsible for motor control and sensor data acquisition. The robot has two DC motors with planetary gear-boxes and rotary optical encoders. The microcontroller performs PID closed-loop control of motor’s speed. Additionally, the robot has Pepperl-Fuchs laser range finder, with industrial standard output signal (4-20 mA), intended to detect obstacles.

The embedded part has to communicate with the non-RT subsystem, i.e., the PocketPC computer. Designed, specific, communication protocol was implemented, working over a RS-232 cable link or via IrDA interface (MCP2150 chip).

PocketPC Subsystem

The subsystem is meant to be accessible for the end-user developer. It is a PocketPC handheld with Windows Mobile on board. The API to control the robot and retrieve sensors data was created in C# (.NET Compact Framework). The API calls issue specific messages over the communication layer (RS-232/IrDA) to the microcontroller.

Researcher can use comprehensible development environment (Visual Studio, .NET, C#) to design, develop and test mobile robot control algorithms. This lets the researcher to perform rapid algorithm prototyping.

Results