The SILO-6 and DYLEMA Projects'
  Home Page

PROJECT:
Controller

Department of Automatic Control
Industrial Automation Institute
Spanish National Research Council - CSIC

 

SILO6_up
LINKS
 
 
SILO6_down

 

Sensor Head

Manipulator

Locator

Walking Robot

Controller

- Operator Station

- Onboard computer

Control System

The control system is distributed between the operator station and the onboard controller.  Both of them are based on PC-based computers.  The operator station will run under the Windows XP operating system, and the onboard controller (the robot's controller) will run under QNX, a UNIX-like real-time multitasking operating system.  Communication between operator station and onboard computer will be performed by radio Ethernet.  The main hardware and software aspects are discussed below.

 

Operator Station:

The operator station is based on a PC-bus computer set up remotely from the walking robot and is in charge of robot/user communication.  It consists of the following modules:

1.      Man-machine interface.

2.      Alarm database manager.

3.      Mobile robot communication.

Man-machine interface

This module is a Java-based program intended to fulfil three main requirements: (a) robot-state monitoring, (b) robot teleoperation and (c) task definition.  The user will have the ability to govern robot motion remotely, with real-time visual information on what the robot is doing.  The man-machine interface also allows the user to define the task, a process that involves the definition of mine-field features (field dimensions, roughness, etc.), robot path and autonomous navigation strategies.  Figure 1 shows what the man-machine interface looks like.

Figure 1. Man-Machine Interface

Alarm-database manager

Each time the robot detects an alarm, the spatial position of the suspect object is stored in a relational database.  The user can access every alarm location found in a given field of a given country.  Field and mine features are also stored.  This database enables mines to be removed with precision (see Figure 2).

Figure 2. Database

Mobile-robot communication

Communication between the operator computer and the onboard computer is conducted by means of a radio Ethernet card.  The operator computer runs under the Windows XP operating system, whilst the onboard controller runs under the QNX operating system.  Because different operating systems are used, the communications protocol has to be compatible with any operating system.  One such protocol is the TCP/IP (Transmission Control Protocol/Internet Protocol) used world-wide for Internet connection.  A client-server architecture was chosen for inter-process communications, where the operator computer is the server and the onboard computer is the client.

Onboard Computer:

Hardware architecture

The onboard controller is a distributed hierarchical system comprising a PC-based computer, a data-acquisition board and eight three-axis control boards based on the LM629 microcontrollers, interconnected through an ISA bus.  The LM629 microcontrollers include digital PID filters provided with a trajectory generator used to execute closed-loop control for position and velocity in each joint.  Every microcontroller commands a DC motor-joint driver based on the PWM technique.  An analog data-acquisition board is used to acquire sensorial data from the range of external equipment (sensors, locators, etc.).  A radio Ethernet card is provided for network communication with the operator station.  Additional electronic cards for interfacing with the detector are also provided, as well as communication with the DGPS systems via RS232.  A general diagram of the SILO6 hardware architecture is shown in Figure 3.

silo6 hwd

Figure3. Hardware architecture

Software architecture

The onboard computer is in charge of the walking robot’s locomotion throughout a minefield.  Therefore, a global planning to guide the walking robot along a predefined path and some mine-search algorithm are required. But also reactive locomotion is required so that the robot is able to respond robustly to uncertain disturbances during task execution. For this purpose a hybrid deliberative/reactive control architecture based on three control levels is proposed for the SILO6 and is shown in Figure 4.

Figure 4. Control architecture

1. Basic Control Level

This layer is in charge of coordinating the simultaneous motion of all six legs of the walking robot to perform straight-line or circular trajectories. Based on trajectory generation, all three joints in a leg are coordinated to perform the required motions. Also, the five joints of the manipulator are coordinated to perform trajectory following. Finally, the individual joints for both the walking robot and its manipulator are controlled through a dedicated microcontroller, which runs a PID control algorithm.

2. Reactive Control Level

This layer is aimed to add robustness to the control system. Based on sensor data (joint positions and foot forces) the reactive control level helps to react to unpredictable changes in the environment. Two reactive behaviors have been considered for the walking robot controller:

2.1. Robot Attitude Regulator: During locomotion any non-constant dynamics (at leg swing, manipulation motion, when bumping against the environment) can disturb robot stability. Such disturbances could be balanced by means of posture regulation by using active compliance with stability compensation.

2.2. Leg Obstacle Avoidance: This behavior reacts when terrain obstacles interrupt leg transfer trajectories. When a position error threshold is detected in a leg motion the transfer trajectory is modified to enable the obstacle avoidance (see Video 1). 

Two more reactive modules have been designed for the manipulator’s motion:

2.3. Object-contour tracer: This module moves the sensor head around an obstacle using information from the bumper (see video 2).

 2.4. Ground-surface tracer: This module keeps the detector head at a constant distance from the ground, controlling its attitude as well (see video 3).

3. Deliberative Control Level

The deliberative control level is aimed to plan the robot motion. Three modules have been considered for the walking robot’s motion planning:

3.1. Gait Generator: This module generates the sequence of leg lifting and foot placement to move the robot in a stable manner.  Dynamic stability is guaranteed by the stability module.  The SILO6 gait generator will be based on three gaits:  straight gait, a spinning gait and a turning gait.

3.2. Gait Selector: Based on user decision, if teleoperation is used, or based on sensor data that determines the grade of terrain roughness, the Gait Selector switches between three gaits, which are: a tripod gait (preferable for even terrain), a discontinuous gait (preferable for quite uneven terrain) and a free gait (for very uneven terrain with forbidden areas).

3.3. Navigator: This module generates on-line a complete-coverage trajectory based on the Boustrophedon Cellular Decomposition. This method divides the mine field into cells free of obstacles, so that each cell is completely covered by the robot with back-and-forth  boustrophedon motions. To achieve complete coverage of an unstructured environment like a minefield the cellular decomposition is performed incrementally based on sensed obstacles. Also, to ensure that the walking robot visits every cell in the  mine field, a connectivity graph is used. Video 4 shows the robot’s trajectory in a minefield planned by the navigator module.

The global planning of the manipulator is performed by one deliberative module:

3.4. Sweep-Trajectory Generator: This module computes the trajectory of the sensor head to ensure complete coverage of the swept area. This is done by means of a cross sweep, which is the most efficient way to scan for buried mines. It avoids overlapping scanned areas while ensuring complete coverage. The sensor head scans an area that covers the width of the walking robot. This module coordinates the manipulator's motion with the walking robot's velocity.

Figure 4. Manipulator’s sweep trajectory (a) in the manipulator’s reference frame (b) coordinated with walking robot’s velocity in an external reference frame.

(a)

(b)

Figure 5. A comparison of sweep motions: (a) crossed sweep (b) circular sweep

In the near future…

  • To implement the navigator in the silo6 robot some aspects have to be solved:

1.      Modify the incremental cell decomposition algorithm to cope with the uncertainity of the sensor-based location system.

2.      Integrate manipulator and walking robot and use the manipulator to sense critical points in the cellular decomposition method.

·        To implement the posture regulator in the SILO6 we need to measure foot forces. Due to the high cost of six good triaxial force sensors, we are considering to measure motor current instead.

 

 

MEC logo
PROJECT: Controller
Department of Automatic Control :: Industrial Automation Institute :: Spanish National Research Council - CSIC