IEncode stands for Intelligent Encoder. First, let me explain what is an encoder. Encoders are nothing but sensors which can convert mechanical movements such as linear or rotational motion to electric signal. This signal is used as feedback for closed loop motor control system.
What motivated me to do this project?When I applied my idea to the Infineon contest it was about a smart remote but it failed to get free sensor kit which had built-in microcontroller. But I never give up, I bought only the sensor TLV493D AB16 through element14.com to continue my expedition with 3D magnetic sensor. Recently I started working on a 6 DoF robotic arm which was driven by servo motors. In order to control this arm with ROS (Robot OS) I should use URDF model of it and should feed joint angles as input. But since I'm using servo motors to control the arm I need to get proper joint angle values as feedback. 3D magnetic sensor helped me to calculate joint angles from each joint. Then I used the same method to calculate angles in DC motors and used Z axis movements for predictive maintenance of motors.
Yes. Encoder provides feedback signal which is vital for controlling the motor or generator to very high precision. This precision is very much needed in industrial controlling and measuring instruments where there is no room for error. Almost all industrial robotic arms operate by taking joint angles as input. Encoders helps us to provide necessary joint angles at each joint in the robotic arm. If we look at the data sheet of Infineon TLV493D 3D magnetic sensor, we see that the maximum data rate possible is 1Mbps which is more than sufficient to act as encoder even for BLDC motors.
These encoders data can be used to drive BLDC motors more efficiently thereby saving energy. Infineon's 3D magnetic sensor TLV493D A1B6 provides high precision angle data which can be directly used to determine position, speed and direction of rotation.
IEncode is smarter when compared to conventional magnetic encoders because it can provides Z axis motion feedback of motor shaft. After years of operations, industrial motor bearings fail and can cause motor shaft movements in Z direction also. These minute motions can be detected by 3D magnetic sensor with the help of its Z axis movement detection.
In an industry where day to day operations are critical in reaching necessary production rates, failure of an instrument is not affordable. There should be no room for error.
IEncode helps to detect these faulty motor movements and thereby informing us to repair the motor or arrange for a backup. This can also alert the repairman by sending an SMS.
Step 1: Get All the PartsGet all the required parts such as 3D magnetic sensor, an arduino microcontroller to read the data, SIM800 module for alert system motors for testing.
Step 2: Connect the ComponentsConnect all the components by referring following circuit diagram.
Let's code arduino board which will provide us rotation angle and Z axis movements. The code involves basic functions to get data from the magnetic sensor using I2C protocol and display it or send it via necessary communication means.
Step 4: Let's Test ItTest 1: Encoder to a servo motor : I have this setup on my breadboard where I analyse magnetometer data on Arduino IDE and Microsoft Excel. The error in data seems to be very less.
Here we are getting very good result without any filtering. I have interfaced the sensor directly to the arduino microcontroller without any hardware or software filter. If we implement a filter definitely the data will be clean and accurate.
Test 2: Involves encoder as a sensor to detect faulty linear movements of motor. After heavy usage motor bearings worn out due to friction and heat. This causes movement of motor shaft on its axis of rotation. i.e Z direction. These minute movements in-terms of millimeters can be detected by Infineon's 3D magnetic sensor TLV493D-A1B6. Now I'm using certain number of linear Z axis motions as input to send a maintenance signal to concerned authorities. Now it sends SMS along with machine number which needs maintenance or replacement. This prior alert helps to arrange for backups while saving a lot of money to the firm. This can be improvised by bringing in machine learning based data analytics.
This is very useful in industries with high production rates and to detect failure of diesel generators in cell phone towers where the power is critical. few hours of downtime in mobile networks may cause huge losses to tower maintenance companies.
Further enhancements:
1. Applying good filter.
2. Using encoder for BLDC controller.
3. Applying machine learning techniques to accurately predict failures.
4. GUI based dashboard to handle multiple motors.
5. MODBUS implementation to attain industrial communication standards.
Comments