Experiment with remote control «Robot Arm»
Kinematic analysis of the robot 6DoIt Mobile Robot Arm (6 DMRA)
Motivation:
The method of creating a laboratory bench with remote control "Robot Arm" is the implementation of the possibility of researching the kinematics of the manipulator's movement on the example of a reduced version of industrial work with 6 degrees of freedom - 6DOF DoIt Mobile Robot Arm (DMRA), in mechatronics tasks. With the ability to evaluate transients created in brushless DC motors.
The main task of the project is the implementation of remote control of Web-interface tools for performing laboratory work within the framework of the discipline "Mechatronic complexes and systems" for students of the 5th and 6th years. This stand is part of the already existing laboratory benches with remote access, which were created as part of the Laboratories Across Borders (LAB) project in cooperation between the university "Reutlingen University", Germany and Dnipro University of Technology, Ukraine.
Laboratory works that were developed within the framework of this project are devoted to the following issues:
- Performing kinematic analysis of DMRA (Fig. 1).
- Solving the direct problem of kinematics using the Denavit-Hartenberg method.
- Binding of coordinate systems to manipulator joints.
- Determining the parameters of links and joints.
- Construction of homogeneous transformation matrices.
- Solving the inverse problem of kinematics.
- Calculation of the coordinates
of each section.
Link to the experiment page:
Methodological instructions:
«Study of the design, parameters and kinematic scheme of the 6DoIt Mobile Robot Arm (6DMRA)»
«Kinematic analysis of the 6DoIt Mobile Robot Arm (6DMRA)»
«Kinematic analysis of the DMRA robot: the inverse problem of kinematics»
Structure of the Lab Bench
The laboratory installation "Robot Arm" is presented in Fig. 3. It is a reduced version of the industrial robot 6DOF DoIt Mobile Robot Arm with 6 degrees of freedom. The moving links of the robot's kinematic pairs are set in motion by servo drives based on a DS3218 brushless DC motor (Fig. 2).
Engines with designations M1-M7 are located in the positions shown in Fig. 3. In addition to servomotors, other elements of the robot's power supply and control system are located on the stand. Information about which is given below.
The Lab Bench consists of the following components:
А1 – The first of two Arduino Uno controllers, which is designed to control the servomotors of the "Robot Arm" bench (M1-M7).
А2 – An optional Servo Shield Board expansion board that has connectors for connecting servo motors, an interface for connecting to Arduino Uno, and control logic that allows you to easily program and control each servo motor separately.
А3 – Power Supply is an electronic power supply unit that provides energy to all circuit elements.
А4 – The second of the two Arduino Uno controllers, which is designed to poll the sensors of the "Robot Arm" bench.
А5, A6, A7 – The MPU-6050 sensor module combines the functions of an accelerometer and a gyroscope in one housing with 6-coordinate (6DOF).
A8 – The TCA9548A module is a multiplexer or switch for an I2C (Inter-Integrated Circuit) bus. It allows you to expand the number of connected devices from 1 to 8 simultaneously connecting and transmitting data over I2C via a single connection pin.
A9, A10, A11 – The INA3221 transducer module is designed to measure voltage and current in electric circuits separately on three channels.
R1 – Raspberry Pi 4, which acts as a server and communicates via the COM port with the control system of the Lab Bench - Arduino Uno (A1-A4).
The principle of operation of the control system:
We will consider the principle of operation of the stand control system on the example of its functional scheme (Fig. 4).
The formation of the control influence on the "Robot Arm" bench occurs by setting the appropriate parameters using a remote Web control interface. This interface is implemented on the basis of the Raspberry Pi 4 (R1) platform, which acts as a server. The interface is a web page that can be accessed remotely using a PC, tablet or smartphone using most modern web browsers. The control influence in the form of a data packet is transmitted from Raspberry Pi 4 to one of the stand control systems - Arduino Uno (A1) using the COM port, by connecting via USB-type B. After processing the received data packet, Arduino Uno (A1) forms a task on the angle of rotation of each of the M1-M7 servomotors in order to change the position of the robotic manipulator arm in space.
Servomotors M1-M7 are connected directly to one of the output channels of the Servo Shield Board (A2) installed on the Arduino Uno (A1), which contains the necessary components and logic for generating PWM signals (PWM - Pulse Width Modulation) needed for control of the angle of rotation of the servomotors.
All components of the circuit are powered by the Power Supply (A3).
Each of the servomotors M1-M7 is connected to the corresponding measurement channel of one of the three INA3221 sensors (A9, A10, A11) in order to measure the voltage and current flowing through each of them.
In order to measure the acceleration and angular velocity of the investigated object in space and determine its coordinates (x0, y0, z0), three MPU-6050 sensor modules (A5, A6, A7) are used. The module combines a three-axis gyroscope (for measuring angular velocity) and a three-axis accelerometer (for measuring acceleration) – 6DOF.
All of these sensors are connected to the second of the two Arduino Uno controllers (A4) using the I2C (Inter-Integrated Circuit) bus multiplexer module TCA9548A (A8), which simplifies the simultaneous communication of a large number of sensors on one I2C line. The data stream from the sensors is read in real time using an Arduino Uno (A4), which forms them into a data packet that is transmitted to the Raspberry Pi 4 using the COM port by connecting via USB-type B. The resulting data stream is displayed on the Web page by means of a graph viewer window built into the page.
The progress of laboratory work can be evaluated in real time using an IP camera installed on the "Robot Arm" structure.