Designing a control module for 8 channels analog servos and 5 cos for I2C bus

The following technical report describes the design, from the electronic point of view, as a board computer to control I2C bus standard 8 RC servos and 5 analog inputs (analog / digital). The main features of the module presented are: Acts as Slave allowing selected via dip switches use the address on the I2C network. Can be set using I2C bus as the desired position of each servo, as the direction of rotation and offset. It can be read by I2C bus digital value (8 bits) for any of the five analog inputs you have.

I2C bus control drivers of Devantech MD03 engine from a mid-range PIC microcontroller

MD03 is a driver to control DC motors up to 50V and 20A developed by Devantech. It has several control modes, among which is the I2C bus control. This device allows control of the direction, speed and acceleration of the motor, and make temperature measurements and the circuit consumption. It has limited systems to prevent damage caused by the same excess consumption or temperature. In Devantech page indicates that worldwide distribution of this device can provide.

Melanie Hexapod Robot Robust of 3 DOF

Robot Monty Tuning

Monty-Tuning is the “tuned/maked” version of the original robot Monty. It is a robot that moves by means of a wheels differential traction and has many sensors and actuators:

Two motors for traction, A motor for the clamp of the arm, Ultrasounds sensor for the detection of movement, Two sensors of light in the head for the location of light sources, Sensors of infrared reflection in the base for pursuit of black lines, Microphone, Loudspeaker and Bumpers for the detection of obstacles.

The set is governed by a microcontroller PIC-16F84 and another small microcontroller (PIC-12C50A) preprogrammed for the management of the movements of the clamp.

The circuitry is composed by five plates: Plate of Control: It contains the logic of the micro, the interface with the PC for the programming of the micro and the power regulation unit. Plate of Power and I/O: It contains the H-bridges that feed the traction motors and the digital I/O for the digital sensors. The input signals are prepared at good TTL levels and sent to the microcontroller (Plate of Control) through a flat cable Plate of Management of the arm: It contains the small preprogrammed microcontroller and the required H-bridge to govern the movements of the clamp Plate of Sensors of light: It adapts the analogical input from the sensors of light of the head for the detection of a threshold that allows to specify what sensor receives more light.

Plate of Sensors and actuators: It contains the necessary electronics for the control and adaptation of the signal of the other sensors and analogical actuators (ultrasounds, microphone and loudspeaker).

The robot has been programmed to stay quiet until it hears a strong noise (like for example an applause). Then “it wakes up” and it tries to go towards illuminated zones. If it does not detect light it turns on in an attempt to find light around. If the attempt fails it returns the the “sleep mode” until hearing a new noise. In his way of search and pursuit of the light it will be detecting the obstacles and applying algorithms to avoid them.

The programming has been made in assembler. The code is widely commented for their understanding (but unfortunately in Spanish by now). At the beginning of the program it is indicated to what I/O ports the sensors/actuators are connected. Melanie is an hexapod robot of 3 degrees of freedom by leg, that by the novel design of legs which it has, can transport several kilograms on its body without excessive power overload.

Robot Mechanics Size (cm): 33 x 31 x 22 Weight: 3 Kg Structure of PVC and Aluminum 6 Legs. 3 degrees of freedom by leg. Design of legs optimized to diminish consumption and to maximize power Driven by radio control servos (Twelve of 3kgcm and six of 5kgcm)

Robot Electronics Servos control circuit with speed management. I/O-1 circuit, with 28 A/D conversion ports and 8 digital I/O. All chips are controlled via I2C bus. Measurement of the position of the 18 servos taking the signal of their potentiometers. Measurement of the consumption of energy of the servos by measuring the voltage drop in resistances of ½ ohm. I/O-2 circuit, with 10 A/D conversion ports, 16 digital I/O and two RS232C ports. The complete circuit is controlled via

I2C bus. Contact sensors at the legs 2 data transceivers for information interchange with the external computer. Battery of 6v NiMH 3300mAh for the servos Battery of 7,2v NiMH 1200mAh for the control electronics Distance measurement infrared sensor located at the front and able to be oriented

Robot Programming Control program in PC developed in Visual C++ 6.0 Movement sequence recording via direct programming Movements generation by displacement of three simultaneous waves and use of inverse kinematics algorithms. Detection of obstacles on the ground and adaptation of the legs and trajectories to resolve it. Detection of lack of ground (holes) and adjustment of gaits to avoid them while walking.

Design of a servomotor controlled by the I2C bus through mid-range PIC microcontroller

The following describes the technical report design, both from the standpoint of electronic computer as a model whose particularity consists servomotor be controlled by I2C bus. The main features of the module presented are:

Acts as Slave allowing selected via dip switches use the address on the I2C network. Can be set using I2C bus as the desired position, as the deadband Additional at all times by the value of the I2C bus module current consumption, temperature, current axis position and certain other state values The module is protected to prevent overheating by temperature sensor which activates a mechanism of ventilation and even stop the servomotor to avoid internal damage.

Brutus v1.0 Rough terrain experimental robot

Brutus was born from the idea to construct a modular robot, able to grow in capacity and in which to be able to prove new experimental modules.

The version 1.0 that is in this technical report refers to the simplest version of the implementation of the robot, in which it has wireless remote control of navigation, as well as a simple program for autonomous navigation.

Electronic circuit Basically it is a control system by microcontroller PIC16F84 and a driver of 8 channels (open collector) of which will be used 6 to give to the muscle wires the current that need to be compressed. The muscle wire is an alloy (Nitinol) that belongs to the group of the so called materials with form memory. The wire is compressed between 3 and 5% of its length when warming up itself by the passage of an electrical current and return to its normal state when cooling off (annulling the passage of electrical current). The contraction is fast (0.5 sg), but the relaxation is slower as thicker is the muscle wire, varying between 0.7 sg for a wire of 37 micrometers and 14.5 sg for one of 375 micrometers.