Overview of MERLIN project
A series of micro-robots MERLIN has been designed and implemented for a broad spectrum of indoor and outdoor tasks on basis of standardized functional modules like sensors, actuators, communication by radio link. The sensors in the MERLIN robot can be divided into two categories:

Figure 1: MERLIN
As shown in Figure 1, MERLIN is controlled by 80C167 CR 16 bit-processor. The microprocessor is employed for interfacing sensor data acquisition, sensor data pre-processing, calculation of the control algorithms, and telecommunication with a remote control and monitoring station. The microcontroller, electronic circuits, motors, and sensors are supplied by a 7.2 V and 12 V NiMH batteries. Two motors on MERLIN, steering and driving dc motors, control the direction and the speed of the car. There are 3 modes of operations, path control, joystick control, and obstacle avoidance (collision avoidance), are described as follows:
1. Path control
One of the most popular topics in automation is path control, in which the path is specified and given to the robot and the robot moves along that path without human interference. The robot has to recognize the path and control its body to move along the specified path and reach the destination. The robot sensors send the signals to the microcontroller and the robot makes a decision and assigns commands to move into the correct orientation. Not only that it is able to stop at the destination but it also moves along the arc of a curve or along a straight line.
The path control in MERLIN robot starts from receiving the drawn path by the user via GUI. The MERLIN server sends that information to the robot and the car performs the path control. The path control panel is shown in Figure 2. The example of the lines or arcs is also shown. During these operations, the data from sensors on board are shown on the right column of GUI that are the measured target distance from 4 ultrasonic sensors, speed of the car and distances measured on the left and right wheels from encoders, angle position from gyroscope, roll, pitch and yaw angles from 3D compass.

Figure 2: The path control panel
2. Joystick control
In some applications, for example in an unknown environment, an area observation or map creating, where we have no information about the characteristic of surface, it is more powerful to control the robot partly by human for better decision in some situations, where the robot is in danger. Joystick is one of the choices for human interface control. It is a well known plug and play device, available in the market. Furthermore, the movement direction of Joystick agrees with the movement of the robot. The Microsoft Sidewinder Joystick is selected for our application. In Joystick control mode, the robot listens to the human commands. The decision to move its body is now up to the joystick movements, forward-backward and left-right. During these operations, the data from sensors on board are shown on the right column of GUI.

Figure 3: The joystick control panel
3. Obstacle avoidance
An intelligent robot must have an ability to protect itself from collision into any objects, which may destroy it in the worst condition. The types of objects depend on the environment. For indoor environment, the obstacles are for example walls, doors, tables and chairs. For outdoor environment, the stones or the tree are the obstacles. The intelligent robot should be able to avoid collision in all cases. Thus, MERLIN detects the object in the front. When the object obstacles its movement, the robot turns into other direction, in which it can further move without collision. Since an artificial intelligent technique has robustness and adaptation for problem solving, a fuzzy logic controller has been implemented.
MERLIN has been developing for more intelligent navigation and control e.g. including other types of sensors for navigations, implementing localization, force feedback joystick control, GPS sensor, pc104, wireless LAN, Photonic Mixer Device (PMD) camera.