FAST PROTOTYPING OF REALTIME ROBOT CONTROL USING MATLAB REAL-TIME WORKSHOP Michele Bongiovanni * [email protected] Basilio Bona * [email protected] Dipartimento di Automatica e Informatica POLITECNICO DI TORINO H www.polito.it Michele Bongiovanni Politecnico di Torino - LabRob Experimental Setup LAN D&A I/O FIELD UNIT ANIPLA, 21-22 Novembre 2003, Brescia 2 Michele Bongiovanni Politecnico di Torino - LabRob HOST PC x86 MATLAB/Simulink RealTime Workshop Stateflow Wind River TORNADO RTI Stethoscope ANIPLA, 21-22 Novembre 2003, Brescia 3 Michele Bongiovanni Politecnico di Torino - LabRob TARGET PC x86 VxWorks kernel BSP Intel driver ethernet NE2000 driver Sensoray RTI tools daemons ANIPLA, 21-22 Novembre 2003, Brescia 4 Michele Bongiovanni Politecnico di Torino - LabRob DAQ & ROBOT Sensoray 626 40 dig I/O 4 DAC 6 encoder/counter Robot 2 DOF brushless motors (NSK Megatorque®) ANIPLA, 21-22 Novembre 2003, Brescia 5 Michele Bongiovanni Politecnico di Torino - LabRob SIMULINK MODEL - Events - ANIPLA, 21-22 Novembre 2003, Brescia 6 Michele Bongiovanni Politecnico di Torino - LabRob SIMULINK MODEL - Controller ANIPLA, 21-22 Novembre 2003, Brescia Controller array Independent joint control approach PID controllers on each motor Scalability Run time reconfigurable controller 7 Michele Bongiovanni Politecnico di Torino - LabRob SIMULINK MODEL - Impianto Simulation Robot model Independent joints Dynamic equations Friction I/O ports to and from DAQ Custom code block to interface DAQ Identification & hardware in the loop Parameter based robot model Robot Parameter computation ANIPLA, 21-22 Novembre 2003, Brescia 8 Michele Bongiovanni Politecnico di Torino - LabRob Code architecture Layered and modular Customizable at low level GENERIC LAYER APPLICATION SPECIFIC LAYER + RTI Scope Daemons COMMON LAYER VXWORKS LAYER ANIPLA, 21-22 Novembre 2003, Brescia 9 Michele Bongiovanni Politecnico di Torino - LabRob Sequenza dei task Common layer coded Synchronism @ 1 kHz (max 8 kHz) DAC max delay: 200 ms per channel powerful H/W, fast control loops. INTEGRATION ALGORITHM READ SYSTEM INPUTS CALCULATE & WRITE SYSTEM OUTPUTS UPDATE DISCRETE STATES INCREMENT TIME ANIPLA, 21-22 Novembre 2003, Brescia 10