Presentation is loading. Please wait.

Presentation is loading. Please wait.

Automatic Control of Wheeled Mobile Robots Subhasis Behera Guided by – Mr. Raman Bedi Department of Mechanical Engineering NIT Jalandhar.

Similar presentations


Presentation on theme: "Automatic Control of Wheeled Mobile Robots Subhasis Behera Guided by – Mr. Raman Bedi Department of Mechanical Engineering NIT Jalandhar."— Presentation transcript:

1 Automatic Control of Wheeled Mobile Robots Subhasis Behera Guided by – Mr. Raman Bedi Department of Mechanical Engineering NIT Jalandhar

2 The Objective ● Studying various feedback control strategies used to control WMRs. ● Kinematic modeling of a car like WMR according to the constraints of geometry of the vehicle and nonslip motion. ● Design and construction of a 3 wheeled car like WMR.

3 The Objective ● Implementing the control strategy in the kinematic model and then controlling the vehicle. ● Devising an algorithm to convert the control parameters into the signals to control the motors. ● Designing and making the control circuit for controlling the stepper motors from the signals generated by the parallel port.

4 Basic Control System Mathematical Model/ Control Strategy (v,δ) Sub-program to translate model's result into controllable parameters (v_F, v_Rl, v_Rr) Low level program to convert the parameters into sequence signals to the driver circuit. Parallel port Driver Circuit/ Power Supply Vehicle F Rr Rl Computer Program

5 The Vehicle ● The WMR is a car like vehicle, driven by the 2 rear wheels and a front wheel steers the vehicle. ● The kinematic constraints of the vehicle geometry gives the required values of the various control parameters. ● These control parameters are then modified so as to change them to the appropriate values achievable by the physical system.

6 The Vehicle

7 Kinematics Kinematics can be divided into the following two categories: ● Control strategy ● Mathematical model The Control strategy is an algorithm which generates the velocity and steering wheel orientation for the WMR, based on its current posture in the GPS. Mathematical model or the kinematic model is a mathematical representation of the actual vehicle. The kinematic model gives the values of the actual vehicle speeds at the various wheels when the vehicle is following a particular pattern of motion outlined by the control strategy.

8 Kinematics q1q1 q2q2 e1e1 e2e2 e3e3 P(q 1,q 2,q 3 ) δ

9 Control Strategy The control strategy being used in the model is: v= v 0 +v par *e 1 δ = c par *e 3 where, e 1 = (xd-q 1 )*cos(q 3 )+(yd-q 2 )*sin(q 3 ) e 2 = -(xd-q 1 )*sin(q 3 )+(yd-q 2 )*cos(q 3 ) e 3 = atan((yd-q 2 )/(xd-q 1 ))-q 3 e 1, e 2 and e 3 are the local longitudinal, lateral and angular co-ordinate values respectively. vpar, cpar are proportionality constants.

10 Kinematic model Once we get the values of v and δ from the strategy, they are converted to the actual values to be used as control parameters in the actual vehicle according to the following algorithm. v_Rl = v*(1-b/l*tanδ) v_Rl_a=(round(v_Rl*t/step_distance)*step_distance)/t v_Rr_a = v_Rl_a*(1+b/l*tanδ)/(1-b/l*tanδ) v_a = v_Rl_a/(1-b/l*tanδ) x=(l/tanδ)*sin((v_a/l)*tanδ*t) y=(l/tanδ)*(1-cos((v_a/l)*tanδ*t) q 1 =q 1 +x*cos(q 3 )-y*sin(q 3 ); q 2 =q 2 +x*sin(q 3 )+y*cos(q 3 ); q 3 =q 3 +((v_a/l)*tanδ*t);

11 Stepper Motor Control ● The WMR is driven by 3 stepper motors – one for the steering wheel and one each for the rear wheels. ● The control of stepper motor involves two aspects – an electronic driver circuit, and a sequence generator software. ● The interfacing of the software with the driver circuit is done through the parallel port.

12 Stepper Motors Stepper motors are electric motors without commutators. All windings of the motor are part of the stator and the rotor is a permanent magnet. Energizing the different windings in sequence enable rotation of the shaft in discrete steps. Types of Stepper Motors: ● Variable reluctance motors ● Unipolar motors ● Bipolar motors ● Bifilar motors ● Multiphase motors

13 Stepper Motors ● The WMR is driven by unipolar stepper motors having a resolution of 7.5°/step. Unipolar Stepper Motor Control Sequence: Winding 1a 1 1 0 0 1 1 0 0 Winding 1b 0 0 1 1 0 0 1 1 Winding 2a 0 1 1 0 0 1 1 0 Winding 2b 1 0 0 1 1 0 0 1 time --->

14 Stepper Motors Driving Ckt. Driving the stepper motors require an electronic device to switch the current in the windings in the desired sequence. ULN-2003 +12 Parallel port Motor Windings

15 The Control Software ● Platform – MS-DOS, Win98 ● Programming Language – C++ ● Port Interface – Parallel port

16 The Control Software ● The Software consists of three components: 1. Stepper motor control functions – hardware level functions, includes the various algorithms for driving the stepper motors. 2. WMR specific functions – includes the kinematic model of the WMR. 3. Plotting functions – various plotting functions for displaying vehicle motion in real-time.

17 Program Structure stepper.h ● The software code is organised into a set of header files which correspond to the 3 sub-components. wmr.h plot.h main program

18 Program Structure include main() { initializeMotors(); initializeGFX(); ---main motion loop--- calculating v, delta; moveVehivle(); ---------------------- closeGFX(); }

19 Stepper Motor Control Functions ● With 4 bits for one motor, control of three motors require 12 bits. ● The parallel port organizes data pins into two sets of 8 and 4 bits each, with port addresses 0x378 and 0x37A respectively. ● Port 0x378 handles two motors(for the rear driving wheels) and port 0x37A handles the steering motor

20 Stepper Motor Control Algorithm

21 WMR Motion Algorithm - moveVehicle() moveVehicle(delta, v, t, distance) setSteering() function call calculate the achievable values of v, v_Rl, v_Rr calculate the values of q1, q2 and q3 translate the values of v_Rl,v_Rr into the no. of steps to be taken in the specified time interval by the rear wheels calculate the delay between consecutive steps for each of the rear motors for a uniform stepping speed in the specified time interval determine a step timing array for each motor consisting of the instants at which steps have to be taken combine the individual step timing arrays into a unified step timing array indicating the timings and the required motor to be stepped execute the stepping sequence by calling the step() funcion at each instant of the unified timing array

22 Plotting Functions ● Draws the co-ordinate system ● Displays the position of WMR at any instant ● Displaying information such as current co- ordinate (q 1,q 2,q 3 ) and the status of WMR motion (i.e. steering or moving etc.).

23 Plotting Functions ● As opposed to the WMR co-ordinate system, the screen co-ordinate system, i.e. the pixel positions start at the top-left corner of the screen and increase from left to right along the width and from top to bottom along the height. ● Thus we need to map the WMR co-ordinate system into the screen co-ordinate system

24 Transformation Algorithm ● q 1 p =q 1 *q 1 _SF+q 1 _offset ● q 2 p =screen_h-(q 2 *q 2 _SF+q 2 _offset) q1q1 q2pq2p q2pq2p q2q2


Download ppt "Automatic Control of Wheeled Mobile Robots Subhasis Behera Guided by – Mr. Raman Bedi Department of Mechanical Engineering NIT Jalandhar."

Similar presentations


Ads by Google