Calibration of 4-in-1 Hobbywing Skywalker Quattro 20A ESC WITHOUT RC Transmitter

Hello all,

I am very much a newbie to RC and quadricopters but I'm working with a group of fellow students on constructing an autonomous quad for a university project. We are currently performing our initial setup.

We do not have an RC transmitter and whilst we could beg/borrow one, we would like to know, first, how to go about calibrating the 4-in-1 ESCs without one. I have read online that it is possible to do this (although the commenter didn't say how) but that it is dangerous since for a first flight you would have no manual override in the event of mis-calibration(s) causing erratic behaviour, however we plan to tether the quad in test flights to overcome such an issue and then fine tune it with/without an RC transmitter (depending on whether we can get our hands on one without purchase).
So, what is the method for performing this calibration through the APM 2.6 in Mission Planner/APMPlanner 2?

One more question:
We would also like to know how to incorporate an Arduino code program into a weypoint Flight Plan in Mission Planner/APMPlanner 2.



A bit more background:

We have built up the frame (except for the landing gear, which will be Araldite-d on soon), mounted the motors, prop savers and props, and connected the electronics to the latest versions of Mission Planner and APMPlanner 2 on the laptop by USB cable, however we have not connected the electronics to the motors.

As soon as the quadricopter has left the ground there must be no further human intervention and it must autonomously carry out a mission to cross a generic flight zone and then enter a target area. It must have a payload release system and must deliver a water payload accurately over an imaginary fire in this target area and then return to launch. Throughout the flight it must be able to stay within a geofence (or if it does exit, it must swiftly and in a stable manner return to the geofenced area) and it must be able to cope with rain and gusts of wind up to 8m/s. Our permitted budget for the entire project is £250 and we are currently JUST on budget.

In terms of components, we have:
3DR (clone) APM 2.6
3DR uBlox LEA-6H GPS with compass
3DR Power Module
3DR (clone) Radio Wireless Telemetry
Turnigy 3S 20C 3300 mAh LiPo battery
Hobbywing 20A Skywalker 20Ax4 UBEC 4-in-1 Brushless ESC
4 Turnigy Aerodrive SK3 - 2830-1020kv Brushless Outrunner Motors
4 10x4.5 Black Rubber Propellers; 2 CW, 2 CCW
4 Prop Savers
'Thermal Knife' circuit as per Bovine Aerospace
Kilner strainer funnel
Custom, self-built aluminium frame
Coat hanger landing gear
3D printed anti-vibration mount as per Omnimac
3D printed GPS stalk mounts as per Omnimac
LED flasher unit



With regards to our second question, we would like the quad to automatically fly by waypoints to the target area, hover and release the water payload. This latter process is controlled by a piece of Arduino code written by Bovine Aerospace and made open to the public. It is this piece of code that we would like to incorporate into the Flight Plan in Mission Planner/APMPlanner 2.

We would be extremely grateful if the members of this community would help us out.



Yours faithfully,
FlyPhi

Views: 3880

Reply to This

Replies to This Discussion

Good evening James,

I've just gone through the steps you indicated and the ardupilot.com link you sent but when I went to 'write params' after changing Ch7_Opt to Camera Trigger, it came up with a message saying: 'CH7_OPT has more than doubled the last input. Are you sure?' I selected yes but I presume this message is just saying that when the DO_DIGICAM_CONTROL command is activated, the A9 pin will be pulled high and that the PWM value will therefore be more than twice what it would be on 'do nothing'? 

James, one more thing:

On the ardupilot website it states: 'Pin 54 to 62: You need to add 54 to the pin number to convert from an analog pin number to a digital pin number. So pin 54 is digital output pin on the A0 connector. Pin 58 is A4 etc.'

I don't quite understand this - where/when do I put 54? The context in which I'm asking is the circuit diagram for the Thermal Knife; one lead must be connected to the 5V rail (+), a second lead must be connected to the Ground rail (-), and a third lead must be connected to a digital output pin.

Does the '54' bit mean that I can connect the first and second leads to the + and - 63 pins on the A9 connector and the third lead to, say, the 'S' 62 pin on the A8 connector but then I have to write this down somewhere in Mission Planner? It's got me a bit confused!

Thanks in advance.

Here's my stripboard circuit diagram in PowerPoint if it helps for easier understanding of where the leads actually are

Attachments:

My bad, not sure how I ended up with that answer, it should have been 9 / (14.37 x 0.025) = 25.1 A...

FlyPhi, The Ch7 setting is only if you want to be able to remotely activate the shutter (balloon perforator)  from your RC transmitter. If you select the 'relay' setting for shutter control on teh gimbal setup page then it will output a digital 0 or 5v on A9 and the PWM settings do not apply

'Run Script' is all you need. To use this script for the purpose you have outlined, you will need to first use MP to set auto mode and arm before running the script (and define a mission of course!).

If you want to get a bit fancier with your script you can take a look here: 

http://copter.ardupilot.com/wiki/python-scripting/

If you want to control everything from the script including selecting the correct mode waiting for GPS and arming then you could look at something like this (untested!):

print 'Start Script'

# Set all channels to mid range:
for chan in range(1,9):
Script.SendRC(chan,1500,False)
# Set throttle ch3 to minimum:
Script.SendRC(3,Script.GetParam('RC3_MIN'),True)

# Wait for GPS:
while cs.lat == 0:
print 'Waiting for GPS'
Script.Sleep(1000)
print 'Got GPS'

# Send yaw right max and wait for ARM message:
Script.SendRC(4,Script.GetParam('RC4_MAX'),True)
cs.messages.Clear()
Script.WaitFor('ARMING MOTORS',30000)
Script.SendRC(4,1500,True)
print 'Motors Armed!'

# Change to AUTO mode:
Script.ChangeMode('AUTO')

# Bump throttle to initiate mission:
Script.SendRC(chan,1500,True)

Script.Sleep(500)
Script.SendRC(3,Script.GetParam('RC3_MIN'),True)

21A is correct but is quite high. The 9V batery will not like this but will probably handle it for a few seconds. The nichrome wire itself may not handle the 9 x 21=189W dissipated across one inch though. Your connecting wires will be under a fair bit of stress too... What is the current capacity of the relay? Maybe you could try 2 x AA cells for 3V to give around 8A, 24W?

These pin numbers are not used in AC - the shutter settings in the gimbal setup page are sufficient.

You need to connect the digital input to your circuit to the signal 's' pin of A9 as seen in this image:

http://copter.ardupilot.com/wiki/common-camera-gimbal/

Your ground can be connected to the -ve pin at this same position too but you can not used the +ve pin to drive your relay as this is a low current output only. You should supply this voltage separately. How are you powering the APM?

Unfortunately I only have Powerpointviewer and not the full software. Your file appears broken into three pieces and I can not see what connects where. Looking at the Bovine Aerospace circuit, I would recommend adding a resistor between the A9 's' pin and the base of the NPN transistor to limit the current - something around 330 ohms should limit it to around 15mOhms which should be plenty to drive the transistor and within the capabilities of the APM. Without a resistor, the s pin will essentially be shorted to ground which would risk damaging the APM.

Here is an alternative circuit to power your nichrome wire triggered by the APM. Any Power MOSFET that meets the voltage/current requirements with an Rds ON of less than a an ohm when Vgs=5v will do. Something like IRLZ34 would be fine and cost only a buck or so. A FET to do the job will not be hard to find - your local electronics store should have something if you are desperate.

Reply to Discussion

RSS

Groups

Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service