Subversion Repositories Projects

Rev

Rev 642 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 642 Rev 694
Line -... Line 1...
-
 
1
[[BR]]
-
 
2
[[BR]]
-
 
3
attachment:VibTestBanner_small.jpg
-
 
4
[[BR]]
-
 
5
[[BR]]
-
 
6
[[BR]]
1
[[TableOfContents(2)]]
7
[[TableOfContents(2)]]
Line 2... Line 8...
2
 
8
 
-
 
9
= What is the VibrationTest Tool? =
-
 
10
The tool '''evaluates the vibration generated by the motors''' using the MK build-in sensors, so no additional hardware is needed. 
-
 
11
 
-
 
12
The VibrationTest works with 1.2 and 1.3 FC boards but unfortunately does not work in combination with ME boards without a hardware patch.
3
= What is the VibrationTest Tool? =
13
[[BR]][[BR]]
-
 
14
The tool can be used to '''balance props, balance motor/prop assemblies''', experimenting with different motor-mounts and so on. As the tool only uses the sensors on the MK FlightControl board, no extra hardware is required.
-
 
15
 
-
 
16
As the tool can follow the vibrations caused by the prop, it is possible to '''deduce the motor RPM''' at a given speed value. This allows checking if a ESC/motor assembly performs as expected.
-
 
17
 
-
 
18
For Aerial Photography, it would perhaps be possible to attach a second FC board to a camera to '''visualize the vibrations the camera is exposed to'''. However, this is under investigation if this produces usable results.
-
 
19
 
-
 
20
 
-
 
21
[[BR]]
-
 
22
 
-
 
23
= Why is it important to reduce vibrations? =
Line 4... Line 24...
4
The tool evaluates the vibration generated by the motors which allows balancing motor/prop assemblies and experimenting with different motor-mounts. The test uses the MK build-in sensors, so no extra hardware is required.
24
The FlightControl sensors pickup the vibrations and this deteriorates performance; the new FC ME comes with vibration dampers in order to reduce the vibrations transferred to the FC. 
5
 
-
 
Line 6... Line 25...
6
Reducing vibration is very important, especially for Aerial Photography or Video. Vibrations result in blurry footage. Some claim that high frequency vibrations can be picked up by the Optical Image Stabilization lens assembly which is incorporated in almost all recent cameras. The OIS is not designed for these vibrations and makes thing worse, even when you switch the OIS feature off in the camera menu. 
25
 
Line -... Line 26...
-
 
26
Reducing vibration is very important, especially for Aerial Photography or Video. Vibrations result in blurry footage. Some claim that high frequency vibrations can be picked up by the Optical Image Stabilization lens assembly which is incorporated in almost all recent cameras. The OIS is not designed for these vibrations and makes thing worse, even when you switch the OIS feature off in the camera menu. 
-
 
27
 
7
In addition, the FlightControl sensors pickup the vibrations and this deteriorates performance; the new FC ME comes with vibration dampers in order to reduce the vibrations transferred to the FC. 
28
Propellers can be balanced the traditional way. However it was discovered that also the motors need balancing. One way to accomplish this is let a small unbalance in the prop compensate the motor unbalance, so the orientation of the prop is important (see [http://www.rcgroups.com/forums/showpost.php?p=12832508&postcount=228 this post]). Looking at the vibraions of a running motor allows balancing the prop/motor assembly as a whole.
8
 
29
 
Line 9... Line 30...
9
Propellers can be balanced the traditional way. However it was discovered that also the motors need balancing. One way to accomplish this is let a small unbalance in the prop compensate the motor unbalance, so the orientation of the prop is important (see [http://www.rcgroups.com/forums/showpost.php?p=12832508&postcount=228 this post]). Looking at the vibraions of a running motor allows balancing the prop/motor assembly as a whole.
30
[[BR]]
Line 10... Line 31...
10
 
31
 
-
 
32
= How does it work? =
11
= How does it work? =
33
The standard FlightControl program samples all sensors periodically and provides a command to read the latest sample from all sensors. The MKTool uses this command to generate graphs of the analog values. In a first approach the VibrationTest used this standard command to monitor vibrations. The problem is that this mechanism only allows to sample the values 30 times a second. The actual shape of the signals cannot be determined and one can only hope to catch the peak values. In order to get reliable results the values need to be monitored for a long time (a minute for example).
12
The standard FlightControl program samples all sensors periodically and provides a command to read the latest sample from all sensors. The MKTool uses this command to generate graphs of the analog values. In a first approach the VibrationTest used this standard command to monitor vibrations. The problem is that this mechanism only allows to sample the values 30 times a second. The actual shape of the signals cannot be determined and one can only hope to catch the peak values. In order to get reliable results the values need to be monitored for a long time (a minute for example).
34
 
Line -... Line 35...
-
 
35
This new approach is based on dedicated FlightControl software providing a new command. The new command instructs the FC to sample one of the sensors as fast as possible and store the info in its internal memory. Afterwards the recorded data can be read to analysis. This allows to grab a reliable signal in a very short time. This approach can capture about 11000 samples a second, 500 times more than the MKTool can.
13
 
36
 
14
This new approach is based on dedicated FlightControl software providing a new command. The new command instructs the FC to sample one of the sensors as fast as possible and store the info in its internal memory. Afterwards the recorded data can be read to analysis. This allows to grab a reliable signal in a very short time. This approach can capture about 11000 samples a second, 500 times more than the MKTool can.
-
 
15
 
37
This is an example of the signal measured by the Roll-ACC sensor:
16
This is an example of the signal measured by the Roll-ACC sensor:
38
[[BR]]
17
[[Anchor(SampleSignalJpg)]]
39
[[Anchor(SampleSignalJpg)]]
18
attachment:test.jpg
40
attachment:test.jpg
19
 
41
 
-
 
42
[[BR]][[BR]]
-
 
43
= Current Project status =
-
 
44
/!\ ~+'''Version 1.2 is available'''+~
20
= Current Project status =
45
[[BR]][[BR]]
21
/!\ ~+'''The version available now (version 0.9) is an beta version; it was only tested by a limited amount of people. 
46
At the time of writing, the tool was tested in combination with:
22
[[BR]]More testers/evaluators are very welcome!'''+~
47
 * PC/Windows XP and Vista
-
 
48
 * FC 1.2 and FC 1.3
-
 
49
 * /!\ '''The Tool does not seem to work well in combination with FC ME without hardware modification.'''
-
 
50
[[BR]]
-
 
51
 
23
[[BR]][[BR]]
52
Theoretically the tool should also run on MAC and Linux.
24
At the time of writing, the tool was tested in combination with:
53
[[BR]][[BR]]
25
 * PC/Windows XP and Vista
54
Features/fixes in the pipeline
26
 * FC 1.2 and FC 1.3
55
 * Tool to help measuring RPM
27
Theoretically the tool should also run on MAC and Linux.
56
 * Measurement parameters in different dialog -> more room for results
28
[[BR]][[BR]]
57
 * Configurable sampling-rate -> sampling over a longer time is needed is some cases
Line -... Line 58...
-
 
58
 * Allow to connect two FC boards for measurement of camera vibrations
-
 
59
 * Integrated backup and restore of flight settings
-
 
60
 * Integrated installing and restore of FC code
29
Features in the pipeline
61
[[BR]][[BR]]
30
 * Automatic backup and restore of flight settings
62
{i} [http://forum.mikrokopter.de/topic-11446.html MK Forum thread for discussions]
Line 31... Line 63...
31
 * Automatic installing and restore of RC flight code
63
[[BR]]
32
[[BR]][[BR]]
64
{i} [[MailTo(frederic AT rc-flight DOT be)]]
Line 43... Line 75...
43
If you do not feel like installing Python, a version that is compiled to a windows executable is provided.
75
If you do not feel like installing Python, a version that is compiled to a windows executable is provided.
Line 44... Line 76...
44
 
76
 
Line 45... Line 77...
45
So, you have two options.
77
So, you have two options.
46
 
78
 
47
[[Anchor(InstallPython)]]
79
[[Anchor(InstallPython)]]
Line 48... Line 80...
48
== Option 1: Install Python ==
80
== Option 1: Install Python and required libraries ==
49
For a Windows machine I propose you install:
81
For a Windows machine I propose you install:
50
 
82
 
51
 * [http://www.activestate.com/activepython/ ActivePython for Windows] Press the big "ActivePython Download Now" button.
83
 * [http://www.activestate.com/activepython/ ActivePython for Windows] Press the big "ActivePython Download Now" button.
52
 * [http://sourceforge.net/projects/pyserial/files/ PySerial (support for serial port access)] Select "pyserial-2.5-rc1.win32.exe" on that page.
84
 * [http://sourceforge.net/projects/pyserial/files/ PySerial (support for serial port access)] Select "pyserial-2.5-rc1.win32.exe" on that page.
Line 53... Line 85...
53
 * [http://www.wxpython.org/download.php wxPython wxWidgets for Python] Select the the win32-unicode version for Python 2.6
85
 * [http://www.wxpython.org/download.php wxPython wxWidgets for Python] Select the the win32-unicode version for Python 2.6
54
 * [http://sourceforge.net/projects/numpy/ NumPy, the fundamental package needed for scientific computing with Python]  
86
 * [http://sourceforge.net/projects/numpy/ NumPy, the fundamental package needed for scientific computing with Python]  
Line -... Line 87...
-
 
87
Once you have Python support on your PC, unzip [http://www.rc-flight.be/VibrationTest/VibrationTest_1_2.zip VibrationTest_1_2.zip] to a directory on your PC.
55
Once you have Python support on your PC, unzip [http://www.rc-flight.be/VibrationTest/VibrationTest_0_9.zip VibrationTest_0_9.zip] to a directory on your PC.
88
 
56
 
89
== Option 2: Get the compiled version ==
Line 57... Line 90...
57
== Option 2: Get the compiled version ==
90
unzip [http://www.rc-flight.be/VibrationTest/VibrationTestExe_1_2.zip VibrationTestExe_1_2.zip] to a directory on your PC
58
unzip [http://www.rc-flight.be/VibrationTest/VibrationTestExe_0_9.zip VibrationTestExe_0_9.zip] to a directory on your PC
91
 
Line 59... Line 92...
59
 
92
 
Line -... Line 93...
-
 
93
[[BR]][[BR]][[BR]]
-
 
94
= How do I use the tool? =
-
 
95
== Prepare your MK ==
-
 
96
 
-
 
97
=== Secure your MK ===
-
 
98
I use luggage straps to secure my MK to the table while it is still able to vibrate:
-
 
99
 
-
 
100
attachment:mk1InTest.jpg
-
 
101
 
-
 
102
[[BR]][[BR]]
60
 
103
 
61
= How do I use the tool? =
104
/!\ '''For MKs with bigger motors I have found that it is increasingly important to make sure that the straps do not vibrate too much and stay out of the propwach as much as possible''' Using some soft materials to isolate the straps from the frame and to minimize the strap vibrations improve the quality of the measurements, see picture below.
Line 62... Line 105...
62
== Prepare your MK ==
105
 
Line 63... Line 106...
63
 
106
attachment:mk2InTest.jpg
Line 64... Line 107...
64
=== Secure your MK ===
107
[[BR]]
Line -... Line 108...
-
 
108
Later in this page it will be explained how the quality of the measurements can be checked.
65
I use luggage straps to secure my MK to the table while it is still able to vibrate:
109
 
Line -... Line 110...
-
 
110
[[BR]]
-
 
111
[[Anchor(InstallFCSoftware)]]
-
 
112
=== Installing the FlightControl software ===
66
 
113
The VibrationTest tool only works in combination with a special version of the FlightControl software. It must be flashed in the FC board before using the test and '''you need to reinstall your regular software version afterwards'''. This just takes a few minutes. Switching the software is done the usual way, using the MKTool.
67
attachment:mk1InTest.jpg
114
 
Line 68... Line 115...
68
 
115
You will find the required hex file in the same directory with the VibrationTest tool.
69
=== Installing the FlightControl software ===
-
 
-
 
116
 
70
The VibrationTest tool only works in combination with a special version of the FlightControl software. It must be flashed in the FC board before using the test and '''you need to reinstall your regular software version afterwards'''. This just takes a few minutes. Switching the software is done the usual way, using the MKTool.
117
/!\ '''The FC code for the VibrationTest is based 0.74d but is not fit for flying! Before flying, you will need to reinstall your initial FC code. When the version you use for flying is 0.74d, your settings should be preserved. In combination with other versions, it might not be the case. It is a good idea to backup yout settings to PC (via the MKTool) before installing the VibrationTest FC code. '''
-
 
118
 
-
 
119
After insatlling the FC code for the VibrationTest, the LC-Display in the MKTool will look like this:
-
 
120
 
-
 
121
[[Anchor(InstallFCSoftwareJpg)]]
-
 
122
attachment:LCDisplay.jpg
-
 
123
 
-
 
124
It is normal that a there is a warning for a missing BL-Ctrl. When you have 4 motors for example, it should complain that it did not find motor 5.
-
 
125
 
-
 
126
 
-
 
127
== Starting the VibrationTest tool ==
-
 
128
In the directory where you unzipped the tool, dubbleclick VibrationTestGui.py (in case of the Python version) or VibrationTestGui.exe 
-
 
129
 
-
 
130
== Using the VibrationTest tool ==
-
 
131
[[BR]]
-
 
132
[[Vimeo(6948282)]]
-
 
133
[[BR]][[BR]]
-
 
134
[[Vimeo(7670919)]]
-
 
135
[[BR]]
-
 
136
 
-
 
137
== Checking the reliability/accuracy of the results ==
-
 
138
Before you start, it is good to check the reliability of the test and setup.
-
 
139
 
-
 
140
You should alway start with a sweep and look at different sensors. If the vibrations is rather constant over motor-speed, the combination might be well balanced or you might not be measuring what you are hoping to measure. In this case, sticking some tape to the prop should should unbalance it and you should see a difference. 
-
 
141
[[BR]]
-
 
142
You can have a look at the recorded signals, the filtered signals and perhaps the spectrum.
-
 
143
The picture below shows an example of (raw) a signal of good quality:
-
 
144
 
-
 
145
attachment:GoodSignal.jpg
-
 
146
 
-
 
147
[[BR]]
-
 
148
The signal below is regular but goes slowly up and down. This is not a big problem as this will be filtered out later; this is still good:
-
 
149
 
-
 
150
attachment:MediumSignal.jpg
-
 
151
 
-
 
152
[[BR]]
-
 
153
The signal in the next picture is of low quality. Propably other components than the motor are vibrating:
-
 
154
 
-
 
155
attachment:BasSignal.jpg
-
 
156
 
-
 
157
[[BR]]
-
 
158
[[BR]]
-
 
159
If the signals seem ok, you can repeat the sweep multiple times, using one of the sensors. Each time you should get similar results. Results will never be 100% the same.
-
 
160
 
Line -... Line 161...
-
 
161
Another test you should do, is let the tool measure multiple times at the same speed; for example "10*100,10*200". The measurement at the same speed should report the about the same amount of vibrations.
-
 
162
 
-
 
163
The figure below shows the result of such test with a "Roxxy 2824-34 / EPP1045 / 3s / Standard ESC" combination. All but the green line are from the Nick sensor. The black line are vibrations measured at speeds 130 and 185. The other lines are sweeps. This does not look too bad.
71
 
164
 
-
 
165
attachment:acuracy1.jpg
-
 
166
 
72
You will find the required hex file in the same directory with the VibrationTest tool.
167
[[BR]]
Line -... Line 168...
-
 
168
(!) When the results are disappointing, one should experiment with the way the MK is attached. One could fix the MK more firmly to the desk or on the contrary allow more movement. One should also and make sure nothing else but the MK can vibrate. 
-
 
169
 
-
 
170
It is also possible that the filter parameters might not be optimal for your setup. In the figure below I have almost disabled the filter and switched to "pp" measurement:
-
 
171
 
-
 
172
attachment:acuracy2.jpg
-
 
173
 
-
 
174
[[BR]]
-
 
175
This is another example of such a test (Turnigy 2836-750 / APC 12x3.8 / 4s / TowerPro ESC):
-
 
176
 
-
 
177
attachment:acuracy3.jpg
-
 
178
 
-
 
179
[[BR]][[BR]]
-
 
180
= Examples =
-
 
181
 
-
 
182
== Balancing example: Roxxy 2824-34 / EPP1045 / 3s / Standard ESC ==
-
 
183
[[Vimeo(7011506)]]
-
 
184
 
-
 
185
[[BR]]
-
 
186
== Effect of prop position, Roxxy 2824-34 / EPP1045 3s / Standard ESC ==
-
 
187
The importance of the position of the propeller relative to the motor was first reported by RCGroups member "Old Man Mike", see [http://www.rcgroups.com/forums/showpost.php?p=12832508&postcount=228 this post]. My tool also shows this effect. However, I observed that sometimes rotating the prop did not produce significant variations...
-
 
188
 
-
 
189
I discovered that when I first balance the prop as good as I can using the VibrationTest, rotating the prop produced very little difference.
-
 
190
 
-
 
191
I come to the conclusion that I need to deliberately unbalance the prop a bit in order to find the "sweet spot". I also observed that when I unbalance the prop by sticking some tape on one side of the prop the vibrations peak while they go trough a minimum when I stick some tape to the other side.
-
 
192
I think this supports the theory that the slightly unbalanced prop can compensate for unbalances in the motor.
-
 
193
[[BR]][[BR]]
-
 
194
attachment:StudyRotation.jpg
-
 
195
[[BR]][[BR]]
-
 
196
On the X-asis the rotation of the prop in steps of 60 degrees. The red line is with a prop that I balanced before (needs some tape opposite to the prop size-markers). The green line shows vibrations when I attach an additional strip of tape (so unbalancing it). The blue line shows what happens when I attach tape to the other side (where the markers are).
-
 
197
 
-
 
198
== Balancing example: Turnigy 2836-750 / APC 12x3.8 / 4s / TowerPro ESC ==
-
 
199
[[BR]]
-
 
200
attachment:Mk2BalancingExample1.jpg
-
 
201
[[BR]]
-
 
202
The red line is the initial balancing. The prop seemed best balanced with no additional tape.[[BR]]
-
 
203
The green line are the measurement while rotating the prop (steps of 45 degrees)[[BR]]
-
 
204
The blue line is the re-balancing, due to the repositioning of the prop the results are better. The first 3 measurements showed that no tape produced the best results. In the last 3 measurements of the blue line, I experimented with smaller strips and this produced the best result.
-
 
205
 
-
 
206
[[Anchor(MECaps)]]
-
 
207
== Influence of ME ACC capacitors ==
-
 
208
[[BR]]
-
 
209
This example shows why the VibrationTest does not work in combination with FlightControl ME boards. 
-
 
210
ME boards have bigger capacitors on the ACC lines and these suppress the signal we are interested in. 1.3 boards have 0.1 uF capacitors while ME has 1 uF capacitors.
-
 
211
[[BR]][[BR]]
-
 
212
To be sure that the issue was due to these capacitors I replaced one of the capacitors and performed some measurements. The first picture below shows the raw signal without capacitor (0uF). The next picture shows the signal with a 0.1uF capacitor, so this corresponds with the capacitor used on 1.3 boards. For the last picture a 1uF capacitor (so the normal value for an ME board) was installed. As you can see the signal is completely suppressed...
-
 
213
[[BR]][[BR]] 
-
 
214
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0uF.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0uF.jpg, width=300)]]
-
 
215
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0d1uF.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0d1uF.jpg, width=300)]]
-
 
216
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-1uF.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-1uF.jpg, width=300)]]
-
 
217
[[BR]][[BR]][[BR]]
-
 
218
The pictures below show the spectra of the same signals. As you can see, the 0.1uF cap already filters a lot but leaves the vibration signal visible.
-
 
219
[[BR]] [[BR]]
-
 
220
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0uF-spectrum.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0uF-spectrum.jpg, width=300)]]
-
 
221
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0d1uF-spectrum.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-0d1uF-spectrum.jpg, width=300)]]
-
 
222
[[ImageLink(http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-1uF-spectrum.jpg, http://www.rc-flight.be/VibrationTest/Images/ME-Acc-Cap-1uF-spectrum.jpg, width=300)]]
-
 
223
 
73
 
224
[[BR]][[BR]]
-
 
225
[[Anchor(Changelog)]]
74
/!\ '''The FC code for the VibrationTest is based 0.74d but is not fit for flying! Before flying, you will need to reinstall your initial FC code. When the version you use for flying is 0.74d, your settings should be preserved. In combination with other versions, it might not be the case. It is a good idea to backup yout settings to PC (via the MKTool) before installing the VibrationTest FC code. '''
226
= Changelog =
75
 
227
||'''Version'''||'''Date'''||'''Changes'''||
76
After insatlling the FC code for the VibrationTest, the LC-Display in the MKTool will look like this:
228
||1.2||17/11/2009||- Ability to measure Gyro sigals[[BR]]- Tool to measure RPM||
77
 
229
||1.0||24/10/2009||= 0.9 RC4||
-
 
230
||0.9 RC4||21/10/2009||- FC code: ignore mixing table so that all motors always work[[BR]]||
-
 
231
||0.9 RC3||17/10/2009||- Fixed limitation of 4 motors (not tested)[[BR]]- More parameter checking and clear error reporting[[BR]]- Support to connect to NC[[BR]]- Fixed exception at start of measurement||
-
 
232
 
-
 
233
[[BR]][[BR]]
-
 
234
= Older versions =
-
 
235
 
-
 
236
 * 1.0
-
 
237
[http://www.rc-flight.be/VibrationTest/VibrationTest_1_0.zip VibrationTest_1_0.zip][[BR]]
-
 
238
[http://www.rc-flight.be/VibrationTest/VibrationTestExe_1_0.zip VibrationTestExe_1_0.zip][[BR]]
-
 
239
 
-
 
240
[[BR]][[BR]]
-
 
241
= Links =
-
 
242
 
-
 
243
=== VibrationTest related ===
-
 
244
 * [http://svn.mikrokopter.de/mikrowebsvn/listing.php?repname=Projects&path=/VibrationTest/#_VibrationTest_ VibrationTest Project in Subversion]
-
 
245
 * [http://forum.mikrokopter.de/topic-11446.html MK Forum thread for discussions]
-
 
246
 * Mail FredericG: [[MailTo(frederic AT rc-flight DOT be)]]
-
 
247
 
-
 
248
=== Related Threads ===
-
 
249
 * [http://forum.mikrokopter.de/topic-7794-1.html Thread: Vibrationsdämpfung der Antriebsmotoren]
-
 
250
 * [http://forum.mikrokopter.de/topic-post106888.html Thread: Tilt servo play => Vibrations]
-
 
251
 * [http://www.mk-fr.info/forum/index.php/topic,812.msg12038.html Thread: Equilibrage des Hélices RC (French)]
78
attachment:LCDisplay.jpg
252
 * [http://www.vimeo.com/4257366 Video: Is the Optical Image Stabilization of the FX35 causing problems?]
Line 79... Line 253...
79
 
253
 * [http://www.rcgroups.com/forums/showthread.php?t=807347 Thread: Multikopter (mikrokopter, UAVP, x-ufo-3rd, etc) AP pictures]
Line 80... Line 254...
80
== Starting the VibrationTest tool ==
254
 
81
In the directory where you unzipped the tool, dubbleclick VibrationTestGui.py (in case of the Python version) or VibrationTestGui.exe 
255
=== Related Projects ===