Getting Started: Difference between revisions
No edit summary |
|||
Line 21: | Line 21: | ||
== The Gimbal == | == The Gimbal == | ||
Before you power up any electronics it is absolutely necessary to balance your gimbal and to ensure minimum resistance to rotations (friction in bearings, stiff cables, etc). Any | Before you power up any electronics it is absolutely necessary to balance your gimbal and to ensure minimum resistance to rotations (friction in bearings, stiff cables, etc). Any imbalance or distraction to free rotation will make setting up the gimbal much more difficult or even impossible. The goal is that no matter where your camera, mounted in the gimbal, points at, it should stay in that position. The better you do the job the better the stabilization performance will be. | ||
== Connections == | == Connections == | ||
Line 27: | Line 27: | ||
In order to operate the gimbal the first time, only few things need to be connected to the controller: | In order to operate the gimbal the first time, only few things need to be connected to the controller: | ||
* IMU - without that the controller will show errors and won't power up the motors. | * IMU - without that the controller will show errors and won't power up the motors. | ||
* Motors - Mot0 and Mot1 are meant for the Pitch and Roll motors (which is the default setting), and Mot2 for the Yaw motor. The order of the three pins of each motor is irrelevant, as motor directions were not set in the GUI | * Motors - Mot0 and Mot1 are meant for the Pitch and Roll motors (which is the default setting), and Mot2 for the Yaw motor. The order of the three pins of each motor is irrelevant, as motor directions were not set yet in the GUI. | ||
* USB port - connect it to a computer for setup and debugging purposes. | * USB port - connect it to a computer for setup and debugging purposes. | ||
* Battery - if the board is powered by USB only, then the motors are shut off and won't work. | * Battery - if the board is powered by USB only, then the motors are shut off and won't work (please do '''not connect''' a battery yet, see next chapter). | ||
All the other ports, such as the Rc input ports, shall remain disconnected for now. | All the other ports, such as the Rc input ports, shall remain disconnected for now. | ||
Line 43: | Line 43: | ||
Once the proper COM port is selected, the first thing to do is to hit the [Read] button. If everything is in order, the GUI will read the currently stored settings from the controller. In the message box at the bottom you will see some messages and a final "Read...DONE!" text. | Once the proper COM port is selected, the first thing to do is to hit the [Read] button. If everything is in order, the GUI will read the currently stored settings from the controller. In the message box at the bottom you will see some messages and a final "Read...DONE!" text. | ||
Now it's time to set the most important parameters, namely the IMU orientation and the motor parameter values, without the controller can't work properly. | Now it's time to set the most important parameters, namely the IMU orientation and the motor parameter values, without which the controller can't work properly. | ||
For the following the motors should NOT be operational. This can be achieved in various ways | '''For the following the motors should NOT be operational.''' This can be achieved in various ways, for example by physically disconnecting all motors, or using the [Disable all Motors] buttons in the configuration tabs. The easiest, and recommended, way is however to power the board by only the USB connection, i.e. to not connect a battery to it. | ||
[[File:1main.png|480px]] | [[File:1main.png|480px]] | ||
Line 51: | Line 51: | ||
== IMU Orientation == | == IMU Orientation == | ||
The tab called [Configure IMU] is meant to support you in setting the IMU orientation correctly. There are so many different ways in which you can attach the IMU to your camera (above the camera, below, at the backside, with the axis up, down, left, right, and so on) but the controller does not know. So you have to tell. | The tab called [Configure IMU] is meant to support you in setting up the IMU orientation correctly. There are so many different ways in which you can attach the IMU to your camera (above the camera, below, at the backside, with the axis up, down, left, right, and so on) but the controller does not know. So you have to tell. | ||
The first thing is to ensure all | It is of outmost importance that you set the IMU orientation correctly, since otherwise the controller does not have any chance to work correctly. Thus, this is the most important step. '''Please double and triple check that you got the IMU stetting right!''' | ||
The first thing is to ensure that all motors are shut off to avoid any motor movements. | |||
Now we investigate the camera and the orientation of the IMU module. The IMU's z axis points outwards of the surface of the IMU chip; in the example below it points downwards the camera. So you specify the z-axis to point "down". | Now we investigate the camera and the orientation of the IMU module. The IMU's z axis points outwards of the surface of the IMU chip; in the example below it points downwards the camera. So you specify the z-axis to point "down". | ||
For the x | For the x axis the IMU board has an arrow printed on it. In the example below it is pointing in the camera direction, hence in the GUI you set the [x axis points] to "front". | ||
This setting needs to be sent to the board, so you click on the [Write] button. In order to make the changes permanent however, the menu option [Store to EEPROM] can be used. Alternatively, click on the check box next to the [Write] button, which causes the button label to change to [Write+Store], and hit the button. Both methods are fine. | This setting needs to be sent to the board, so you click on the [Write] button. In order to make the changes permanent however, the menu option [Store to EEPROM] can be used. Alternatively, click on the check box next to the [Write] button, which causes the button label to change to [Write+Store], and hit the button. Both methods are fine. | ||
Line 69: | Line 71: | ||
If you are uncertain about the setting, you can write the setting to the controller (temporarily or into the EEPROM) and then click on the [Data Display] button. This will open a realtime monitor window. In the top you can see the current Pitch, Roll, and Yaw angles once you did click on [Start] in that window. | If you are uncertain about the setting, you can write the setting to the controller (temporarily or into the EEPROM) and then click on the [Data Display] button. This will open a realtime monitor window. In the top you can see the current Pitch, Roll, and Yaw angles once you did click on [Start] in that window. | ||
As the motors are (hopefully) disabled still, you can e.g. tilt the camera downwards. The Pitch value | As the motors are (hopefully) disabled still, you can e.g. tilt the camera downwards. The Pitch value must then get more positive. Assume that you are flying a right turn, then the Roll value must get more positive. | ||
If you do not observe that go back and repeat the IMU orientation setting. | |||
[[File:9datadisplay.png|480px]] | [[File:9datadisplay.png|480px]] | ||
In case your IMU board has no arrow printed or you are uncertain | In case your IMU board has no arrow printed on or you are uncertain then you can use the white dot in one of the corners on the IMU chip (MPU6050) as well for the orientation. In the diagram below it is shown how the axes are orientated in relationship to the dot. | ||
In the diagram below | |||
As said before, the z axis comes out of the top surface, the y axis points towards the dot and is on the left edge (assuming you hold the IMU so that the dot is left of the chip), and the x axis points away from the dot on the upper edge. | |||
The diagram below shows also the IMU orientation index for four example situations. Please note that in this diagram on looks at the camera from above, and not from below. | |||
[[File:Mpufinal.jpg|800px]] | [[File:Mpufinal.jpg|800px]] | ||
Line 82: | Line 89: | ||
For the motor settings there is a separate tab as well, the [Configure Motors] tab. Again, ensure that the motors are disengaged. | For the motor settings there is a separate tab as well, the [Configure Motors] tab. Again, ensure that the motors are disengaged. | ||
In the example below the Mot0 port on the controller is connected to the Pitch motor, which lets the camera look up or down. Mot1 is connected to the Roll motor, which keeps the horizon level. Remember, Mot2 has to be used for Yaw | In the example below the Mot0 port on the controller is connected to the Pitch motor, which lets the camera look up or down. Mot1 is connected to the Roll motor, which keeps the horizon level. Remember, Mot2 has to be always used for Yaw. | ||
The motor poles are best read from the motor's datasheets found in the internet. A common value is 14 poles for smaller motors. Large motors may have 22 poles or even more. Self-wound motors | The motor poles are best read from the motor's datasheets found in the internet. A common value is 14 poles for smaller motors. Large motors may have 22 poles or even more. Self-wound motors often have 12 poles. | ||
The last setting of importance is the motor direction. However, the STorM32 controller provides you an "auto" setting, which is recommended to be used. With "auto" the initialization phase of the gimbal takes few seconds longer - who cares (you can avoid that using more advanced settings later | The last setting of importance is the motor direction. However, the STorM32 controller provides you an "auto" setting, which is recommended to be used. With "auto" the initialization phase of the gimbal takes few seconds longer - who cares (you can avoid that using more advanced settings later if you wish). | ||
With these few steps the most important fields in the [Gimbal Setup] tab are properly set, and you are ready to go | With these few steps the most important fields in the [Gimbal Setup] tab are properly set, and you are ready to go! | ||
[[File:7configuremotors.png|480px]] | [[File:7configuremotors.png|480px]] | ||
Line 94: | Line 101: | ||
== Next step - PID Tuning == | == Next step - PID Tuning == | ||
Once you have completed the above, the motors can be turned on. Check in the [Expert] tab that the [Pitch Usage], [Roll Usage] and [Yaw Usage] parameters fields are all set to "normal" (the default is "disabled"). If not, set them to "normal" and write and store the changed setting. | Once you have completed the above steps, the motors can be turned on. Check in the [Expert] tab that the [Pitch Usage], [Roll Usage] and [Yaw Usage] parameters fields are all set to "normal" (the default is "disabled"). If not, set them to "normal" and write and store the changed setting. | ||
Now connect a battery to the controller | Now connect a battery to the controller (it is assumed that you did follow above advice of powering the board via USB). The Gimbal should initialize and start to work. It may also start to show weird shaking or make high frequency noises, which are indications that the PID values in the [Main] tab are sub optimal. | ||
See the [[Tuning Guide| | See the PID parameter [[Tuning Guide|Tuning Guide]] for adjusting those. |
Revision as of 08:42, 8 May 2014
Foreword
This page is intended to help you making the first steps with the STorM32 brushless gimbal controller. Every gimbal is unique because of different size, motors, and camera weight. Copying the configuration of one gimbal to another usually won't work. Hence, you have to learn what happens with your gimbal when changing settings. If you're not prepared to invest the time then the STorM32-BGC, like any other gimbal controller, won't make you happy :-). Otherwise, let's get started...
Parts Checklist
- 1x STorM32BGC
- 1x MPU6050 breakout board (plus 4pol cable and plug to connect to the controller)
- 1x 3 axis gimbal with motors (plus 3x motor cable, each 3pol)
- 1x Lipo 2s - 4s (plus 2pol cable and plug to connect to the controller)
- 1x USB 2.0 cable
- firmware and gui, Downloads
- 1x USB to serial adapter + 4 dupont 2.54mm cables (necessary for firmware update or first flashing)
- 1x joystick + 5 dupont 2.54mm cables (OPTIONAL)
- 1x IR led + 2 dupont 2.54mm cables (OPTIONAL)
- plenty of time and patience ;-)
For possible sources for some parts you may check out Where to buy accessories and supplies.
The Gimbal
Before you power up any electronics it is absolutely necessary to balance your gimbal and to ensure minimum resistance to rotations (friction in bearings, stiff cables, etc). Any imbalance or distraction to free rotation will make setting up the gimbal much more difficult or even impossible. The goal is that no matter where your camera, mounted in the gimbal, points at, it should stay in that position. The better you do the job the better the stabilization performance will be.
Connections
In order to operate the gimbal the first time, only few things need to be connected to the controller:
- IMU - without that the controller will show errors and won't power up the motors.
- Motors - Mot0 and Mot1 are meant for the Pitch and Roll motors (which is the default setting), and Mot2 for the Yaw motor. The order of the three pins of each motor is irrelevant, as motor directions were not set yet in the GUI.
- USB port - connect it to a computer for setup and debugging purposes.
- Battery - if the board is powered by USB only, then the motors are shut off and won't work (please do not connect a battery yet, see next chapter).
All the other ports, such as the Rc input ports, shall remain disconnected for now.
First Configuration
Assuming a firmware was uploaded to the controller before, the first time you connect the controller via USB to the computer you won't see much happening except the two LEDs blinking with various frequencies; the gimbal can be moved freely as no power is applied to the motors (no battery connected yet). Windows will search for the USB driver, which can take a couple of minutes. Please wait until it reports having installed it.
Now you start the GUI executable matching the controller's firmware version and select the COM port, which is used by the USB controller, in the [Port] dropdown box at the bottom left. If you are not sure which COM port is used, unplug the USB cable, click to the right of the field to open the full list of available COM ports and memorize the list. Plug in the USB cable again, and open the list again. The required COM port is the one which has been newly added to the list.
Once the proper COM port is selected, the first thing to do is to hit the [Read] button. If everything is in order, the GUI will read the currently stored settings from the controller. In the message box at the bottom you will see some messages and a final "Read...DONE!" text.
Now it's time to set the most important parameters, namely the IMU orientation and the motor parameter values, without which the controller can't work properly.
For the following the motors should NOT be operational. This can be achieved in various ways, for example by physically disconnecting all motors, or using the [Disable all Motors] buttons in the configuration tabs. The easiest, and recommended, way is however to power the board by only the USB connection, i.e. to not connect a battery to it.
IMU Orientation
The tab called [Configure IMU] is meant to support you in setting up the IMU orientation correctly. There are so many different ways in which you can attach the IMU to your camera (above the camera, below, at the backside, with the axis up, down, left, right, and so on) but the controller does not know. So you have to tell.
It is of outmost importance that you set the IMU orientation correctly, since otherwise the controller does not have any chance to work correctly. Thus, this is the most important step. Please double and triple check that you got the IMU stetting right!
The first thing is to ensure that all motors are shut off to avoid any motor movements.
Now we investigate the camera and the orientation of the IMU module. The IMU's z axis points outwards of the surface of the IMU chip; in the example below it points downwards the camera. So you specify the z-axis to point "down".
For the x axis the IMU board has an arrow printed on it. In the example below it is pointing in the camera direction, hence in the GUI you set the [x axis points] to "front".
This setting needs to be sent to the board, so you click on the [Write] button. In order to make the changes permanent however, the menu option [Store to EEPROM] can be used. Alternatively, click on the check box next to the [Write] button, which causes the button label to change to [Write+Store], and hit the button. Both methods are fine.
Please note that the [Configure IMU] page is for your support only. Its sole purpose is to help you determining the IMU orientation index, here no. 15, and writing it into the [Imu Orientation] parameter field located on the [Gimbal Setup] tab.
If you are uncertain about the setting, you can write the setting to the controller (temporarily or into the EEPROM) and then click on the [Data Display] button. This will open a realtime monitor window. In the top you can see the current Pitch, Roll, and Yaw angles once you did click on [Start] in that window.
As the motors are (hopefully) disabled still, you can e.g. tilt the camera downwards. The Pitch value must then get more positive. Assume that you are flying a right turn, then the Roll value must get more positive.
If you do not observe that go back and repeat the IMU orientation setting.
In case your IMU board has no arrow printed on or you are uncertain then you can use the white dot in one of the corners on the IMU chip (MPU6050) as well for the orientation. In the diagram below it is shown how the axes are orientated in relationship to the dot.
As said before, the z axis comes out of the top surface, the y axis points towards the dot and is on the left edge (assuming you hold the IMU so that the dot is left of the chip), and the x axis points away from the dot on the upper edge.
The diagram below shows also the IMU orientation index for four example situations. Please note that in this diagram on looks at the camera from above, and not from below.
Motor Settings
For the motor settings there is a separate tab as well, the [Configure Motors] tab. Again, ensure that the motors are disengaged.
In the example below the Mot0 port on the controller is connected to the Pitch motor, which lets the camera look up or down. Mot1 is connected to the Roll motor, which keeps the horizon level. Remember, Mot2 has to be always used for Yaw.
The motor poles are best read from the motor's datasheets found in the internet. A common value is 14 poles for smaller motors. Large motors may have 22 poles or even more. Self-wound motors often have 12 poles.
The last setting of importance is the motor direction. However, the STorM32 controller provides you an "auto" setting, which is recommended to be used. With "auto" the initialization phase of the gimbal takes few seconds longer - who cares (you can avoid that using more advanced settings later if you wish).
With these few steps the most important fields in the [Gimbal Setup] tab are properly set, and you are ready to go!
Next step - PID Tuning
Once you have completed the above steps, the motors can be turned on. Check in the [Expert] tab that the [Pitch Usage], [Roll Usage] and [Yaw Usage] parameters fields are all set to "normal" (the default is "disabled"). If not, set them to "normal" and write and store the changed setting.
Now connect a battery to the controller (it is assumed that you did follow above advice of powering the board via USB). The Gimbal should initialize and start to work. It may also start to show weird shaking or make high frequency noises, which are indications that the PID values in the [Main] tab are sub optimal.
See the PID parameter Tuning Guide for adjusting those.