Classic 3-axis stabilizer. The main controller STM32F303 and position sensors are located on the main board on the moving platform. Data from the gyroscope and accelerometer are processed and a quaternion of the current position is calculated. Then the compensation angles are calculated. The project was created to implement a complex camera control system. The video shows a model, a technology demonstrator.
The Beta and Gumma axis motor controllers receive ready-made data on the required position of the motor rotors. This solution minimizes the number of wires supplied to the moving parts of the camera platform. 4 lines are enough for the operation of the moving parts controllers. Power and 2 information wires. The motor controllers are powered from a single voltage. This also minimizes wiring.
The mathematical part of the program uses quaternion mathematics. The current position of the platform and the required camera direction exist and are processed as quaternions. Stabilizers can be controlled via the USB bus or via a Bluetooth signal. A PC utility (Win32 API) has been created for control. The utility visualizes the current position of the platform and camera also based on quaternion transformations of the model vectors.
This development has a complex mathematical part. A fundamental theoretical study of the solution was necessary. A complex task was to control brushless direct current (BLDC) motors using magnetic and electromechanical encoders. It was necessary to create mathematical models of motors operating in real time.
To obtain acceptable results, complex preparation of sensor data and digital filtering were required. Compensation for gyroscope errors along the Beta and Gumma axes is carried out using absolute accelerometer data. But compensation along the Alpha axis is not performed, since in the model the motor causes strong interference to the magnetic field sensor. And it was not possible to use its readings. This problem is solved with great difficulty. It is preferable to use an accurate gyroscope with high speed and its subsequent calibration.