Upload
scott-janousek
View
114
Download
0
Tags:
Embed Size (px)
DESCRIPTION
AIR Wolf: Leveraging ActionScript to Control a Quadcopter EPISODE 2 “A Tale of Reverse and Forward Engineering” Presented by Scott Janousek at 360|Flex in April of 2011.
Citation preview
Scott Janousek - 2011
AIR WOLFLeveraging ActionScript to Control a Quadcopter
EPISODE 2“A Tale of Reverse and Forward Engineering”
Scott Janousek - 2011
DISCOVERY
EXPLORATION
TINKERING
EXPERIMENTATION
Scott Janousek - 2011
Agenda
INTRO
DEMO(s)
PROJECT AIR WOLF
OUTRO
Scott Janousek - 2011
Scott janousek
Founder, Hooken Mobile
Long Time (Flash) Mobile Advocate
Working on all kinds of devices & platforms
“Gadget Geek”
AR.Drone enthusiast
Scott Janousek - 2011
contact
www.scottjanousek.com
@scottjanousek
www.hookenmobile.com
@hookenmobile
Scott Janousek - 2011
AIR WOLFProjectgenesis
Scott Janousek - 2011
Growing up,I was a big fan of ...
Scott Janousek - 2011
Scott Janousek - 2011
For those not familiar ....
Scott Janousek - 2011Season 4 intro
Scott Janousek - 2011
Always wanted to y ...
Scott Janousek - 2011
Scott Janousek - 2011
$$$ ... not to mentionThe whole “eyesight thing”
Scott Janousek - 2011
Cool, but I never got into RC.
Scott Janousek - 2011Too cheap and “plastic-y”
Scott Janousek - 2011
How about makingsomething custom?
Scott Janousek - 2011
DIY DRONES
http://www.diydrones.com
Scott Janousek - 2011http://blog.makezine.com/archive/2010/05/arduimu_quadcopter_drone.html
DIY
Scott Janousek - 2011
“Hey Scott, did you hear about ...”
Scott Janousek - 2011
AR.DRONE
Scott Janousek - 2011
Electric Powered “QUAD COPTER”
(or quadro-copter)
Scott Janousek - 2011
“ok, ok, the commercialis kind of silly ... but, let’s
have a go at it ...”
Scott Janousek - 2011
AR.DRONEfreeflight
(native ios app)
Scott Janousek - 2011
There are more seriousDrones out there besides
AR.Drone ...
Scott Janousek - 2011
OTHERCOOL DRONEhardware
Scott Janousek - 2011
hummingbirde.g. http://www.avinc.com/
Scott Janousek - 2011Humming Bird Drone - Goverment R&D
Scott Janousek - 2011
RECENT uav USAGE
CNN: “Flying Drone peers into Japan’s damaged reactors”
Scott Janousek - 2011
echoquadrocopter
R&D
Scott Janousek - 2011
AIR WOLF project
discussion
Scott Janousek - 2011 BTW: It costs about $300 USD
Scott Janousek - 2011
underside
Acoustic Sensors
IndicatorLight
Belly Camera
Unpair
Reset
Scott Janousek - 2011
Cameras
Belly Cam Front Camera
Scott Janousek - 2011
nativeremotecontrol
apps
Scott Janousek - 2011
Native mobile Apps
iOS
Android
Scott Janousek - 2011
desktop - LINUX & windows
Scott Janousek - 2011
“Yes, I know native is better in this case, but ...
I wonder if I could
connect to AR.Drone viaACTIONSCRIPT ...”
Scott Janousek - 2011
SOFTWARE
ar drone sdk vs. urbi
Scott Janousek - 2011
ardrone SDk
Windows, Linux, Android, iOS support
Scott Janousek - 2011
discovery
Scott Janousek - 2011
Areas
NavData
(Video) Stream
Cmds
Scott Janousek - 2011
Cross Platform App
Desktop
Windows, Mac, Linux
Mobile
AIR for Android
Scott Janousek - 2011
Reverse Engineering
1. Download AR Drone SDK
2. Browse Wiki & Forums
3. Look at C Source Code provided
4. Figure out the open Protocol
Scott Janousek - 2011
setup
Wi-!
Ad-hoc Wi-!
10.0.0.x physical network
10.0.0.x port 8080
10.0.0.1 port 808010.0.0.x port 8080
192.168.1.1 port 5556
192.168.1.2 port 5556
“bandaid” reset button
MacBook Pro
AR Drone
DROIDX (Android)
Airport Extreme
Scott Janousek - 2011
basiccommands
altitude max2m AT*CONFIG=1,\"control:altitude_max\",\"2000\"Landing AT*REF=101,290718208Takeoff AT*REF=102,290717696Hovering AT*PCMD=201,1,0,0,0,0gaz 0.1 AT*PCMD=301,1,0,0,1036831949,0gaz -0.1 AT*PCMD=302,1,0,0,-1110651699,0pitch 0.1 AT*PCMD=303,1,1036831949,0,0,0pitch -0.1 AT*PCMD=304,1,-1110651699,0,0,0 yaw 0.1 AT*PCMD=305,1,0,0,0,1036831949yaw -0.1 AT*PCMD=306,1,0,0,0,-1110651699roll 0.1 AT*PCMD=307,1,0,1036831949,0,0roll -0.1 AT*PCMD=308,1,0,-1110651699,0,0pitch -30 deg AT*ANIM=401,0,1000pitch 30 deg AT*ANIM=402,1,1000
Scott Janousek - 2011
AT syntax
AT*REF=<sequence>,<UI>AT*PCMD=<sequence>,<enable>,<pitch>,<roll>,<gaz>,<yaw> ("oat)0.05 = (int)1028443341 ("oat)-0.05 = (int)-1119040307 ("oat)0.1 = (int)1036831949 ("oat)-0.1 = (int)-1110651699 ("oat)0.2 = (int)1045220557 ("oat)-0.2 = (int)-1102263091 ("oat)0.5 = (int)1056964608 ("oat)-0.5 = (int)-1090519040AT*ANIM=<sequence>,<animation>,<duration>AT*CONFIG=<sequence>,\"<name>\",\"<value>\"
Scott Janousek - 2011
at bitsUI_BIT:00010001010101000000000000000000 | | | | | || | ||||+--0: Button turn to left | | | | | || | |||+---1: Button altitude down (ah - ab) | | | | | || | ||+----2: Button turn to right | | | | | || | |+-----3: Button altitude up (ah - ab) | | | | | || | +------4: Button - z-axis (r1 - l1) | | | | | || +--------6: Button + z-axis (r1 - l1) | | | | | |+----------8: Button emergency reset all | | | | | +-----------9: Button Takeoff / Landing | | | | +-------------------18: y-axis trim +1 (Trim increase at +/- 1??/s) | | | +---------------------20: x-axis trim +1 (Trim increase at +/- 1??/s) | | +-----------------------22: z-axis trim +1 (Trim increase at +/- 1??/s) | +-------------------------24: x-axis +1 +-----------------------------28: y-axis +1
Scott Janousek - 2011
adobe max 2010
Video courtesy of @polygeek (Dan Florio)
Scott Janousek - 2011
post-mortem
Scott Janousek - 2011
Challenges
Battery Life
Lack of protocol documentation
Indoor testing limits R&D
Network cong was time confusing
No Binary Sockets in AIR for Android !!!!
Network Latency
Buggy Firmware (pre 1.5)
tech challenges
Scott Janousek - 2011
URBIUniversal Robot Body Interface
Scott Janousek - 2011
Urbi is an open source driver for multiple robotic systems.
A driver has been developed that allows Urbi to interface with the AR Drone.
So now you can control your drone with a laptop, joystick, keyboard, wii remote, etc.
Urbi even allows you to write scripts to have the bot perform actions.
Scott Janousek - 2011
urbi client connection
Scott Janousek - 2011
urbi launch script example
Scott Janousek - 2011
ar.drone urbicommands
Scott Janousek - 2011
motion tracking
control test
Scott Janousek - 2011
braincomputerinterface
(b.c.i)
Scott Janousek - 2011
AS3 API for Neurosky Mindset BCI
actionscript api
Scott Janousek - 2011
gostai studio& gostai lab
Scott Janousek - 2011
Gostai Studio and Labs are IDEs that allow developers to interface with robotics, etc.
It can be used with URBI.
ULA files are markup files similar to MXML.
Drag and Drop components are available.
Scott Janousek - 2011
take aways
AR Drone is an fun toy
AIR, Flex = Prototyping made easy
URBI & Gostai = great for hobby robotics
Experiment, tinker, & have fun
Air Wolf Movie? ... I hope so ... :)
Scott Janousek - 2011
links
ardrone.parrot.com
@ardrone, facebook.com/Parrot.Official
youtube.com/user/ARdrone
diydrones.com
www.ardrone-"yers.com
www.x-plane.com www.$sherinnovation.com/?p=$-auav
Scott Janousek - 2011
@scottjanousek
http://www.scottjanousek.com