79
PX4 in STEM education: How we taught a thousand students how to program drones

PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

PX4 in STEM education: How we taught a thousand

students how to program drones

Page 2: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MOrigins (2013)

Page 3: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MPizza delivery in Syktyvkar (2014)

Page 4: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MPizza delivery in Syktyvkar (2014)

Page 5: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MAutonomous delivery in Samara (2016)

Page 6: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MAutonomous delivery in Samara (2016)

Page 7: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Page 8: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Video of charging station

Autonomous monitoring UAS

Page 9: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MDrones in education

Page 10: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MApproaches to educational drones

• RTF drones

• modular drones

• kits of common parts

Page 11: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MProblems of robotics education

Robotics is a young field. It makes it so interesting, but for the same reason it's hard to learn.

Alternatives:

• make something simple

• hide complexity

• make awesome documentation

Page 12: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

vue.js docs ROS docs

Page 13: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MHow to teach robotics?

Alternatives:

• make something simple

• hide complexity

• make awesome documentation

Page 14: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MOur drone kit

Page 15: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MWhy “CLEVER”?

Клевер /ˈklʲevʲir/ – clover

Page 16: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCLEVER 4 kit

Page 17: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MHardware & software

Speed controller ESC 4 pcs.

Power distributionboard with BEC

Flight controller 

Single-boardcomputer 

Machine vision camera

Electric motor 4 pcs.

Frame kit 

Propellerprotection

AssemblySet

Charger 

Light-emittingdiode strip

Assembly manual,Training Materials

Propellers (couple) 4 pcs.

Batteries 2 pcs.

Remote Control

Assemblykit

Trainingsimulator

Laserrangefinder

Page 18: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MWhy PX4?

Autopilot software requirements: • flexibility • necessary features (low-level control, indoor

flights) • not just firmware, but the full stack (ground

control, log analysing) • simplicity • stability • community

Page 19: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MDocumentationclever.copterexpress.com/en

Page 20: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MAdoption

Page 21: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MPath of student

Page 22: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSchool

• school camps

• physics: maybe

• design & engineering: yes

• computer science: YES PLEASE WE WANNA CODE THE DRONE

Page 23: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSchool: benefits with drones

Page 24: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCollege«UAS Operating» educational standard for colleges

Page 25: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCollege: contests & competitions

Page 26: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MUniversity:science & labs

Drone as:

• a tool for education

• a platform for research

Subjects:

• estimation theory

• control theory

• computer vision, SLAM, ML…

Page 27: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MIROS 2019

Page 28: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MIROS 2019

Page 29: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCommunity

Page 30: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MTeam

Page 31: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCourses for teachers in Russia

Page 32: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCourses for teachers in China

Page 33: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSales

2016 2017 2018

kits214 kits

967 kits1243

AMOUNT SOLD

YEAR2019

kits2 0 0 0

CLEVER 1

CLEVER 2

CLEVER 3

CLEVER 4

Page 34: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

How does open sourceimpact business?

Page 35: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MRussian market of educational drones

COEX Clever 4

Geoscan Pioneer

copter.space Zhu-Zha

MAI Filin

Edcom EdDrone

Droneshub Alfa

55 %

26 %

10 %

5 %

3 %

1 %

Page 36: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Software framework goals

Page 37: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MArchitecturalApproach

Library based (DroneKit) IPC based (ROS/MAVROS)

• Easier to understand • Install with simple pip install

• Introspection & Debugging • Visualization • Logging • Multiple nodes can access the same

data • User program doesn’t start the entire

system • Different programming languages • Transparently distributed

Page 38: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MPositioning system

• GPS

• Motion Capture • Onboard camera based

Page 39: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MOnboard camera based navigation

Fiducial markers (ArUco) Optical flow

Page 40: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Flying in OFFBOARD

Page 41: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MRaw MAVROSimport rospy from geometry_msgs.msg import PoseStamped from mavros_msgs.srv import CommandBool, SetMode

rospy.init_node('flight')

arming = rospy.ServiceProxy('/mavros/cmd/arming', CommandBool) set_mode = rospy.ServiceProxy('/mavros/set_mode', SetMode) pos_sp_pub = rospy.Publisher('mavros/setpoint_position/local', PoseStamped, queue_size=1)

lpos = None

def pose_callback(msg): global lpos lpos = msg

rospy.Subscriber('/mavros/local_position/pose', PoseStamped, pose_callback)

pos_sp = PoseStamped() pos_sp.header.frame_id = 'map' pos_sp.pose.orientation.w = 1

def publish_setpoint(event): pos_sp.header.stamp = rospy.get_rostime() pos_sp_pub.publish(pos_sp)

rospy.Timer(rospy.Duration(0.1), publish_setpoint)

# wait for local position while lpos is None: rospy.sleep(0.1)

# take off to 3 meters pos_sp.pose = lpos.pose pos_sp.pose.position.z += 3

rospy.sleep(1)

set_mode(base_mode=0, custom_mode='OFFBOARD') rospy.sleep(1)

arming(True)

rospy.spin()

Page 42: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

simple_offboard

Page 43: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MProject template

import rospy from clever import srv from std_srvs.srv import Trigger

rospy.init_node('flight')

get_telemetry = rospy.ServiceProxy('get_telemetry', srv.GetTelemetry) navigate = rospy.ServiceProxy('navigate', srv.Navigate) navigate_global = rospy.ServiceProxy('navigate_global', srv.NavigateGlobal) set_position = rospy.ServiceProxy('set_position', srv.SetPosition) set_velocity = rospy.ServiceProxy('set_velocity', srv.SetVelocity) set_attitude = rospy.ServiceProxy('set_attitude', srv.SetAttitude) set_rates = rospy.ServiceProxy('set_rates', srv.SetRates) land = rospy.ServiceProxy('land', Trigger)

Page 44: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MTake Off

navigate(x=0, y=0, z=1, speed=0.5, frame_id='body', auto_arm=True)

Page 45: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MBody Frame

Page 46: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MUsage from Bash

Page 47: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

navigate(x=0, y=2, z=0, speed=0.5, frame_id='body')

Page 48: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

navigate(x=0, y=-2, z=0, speed=0.5, frame_id='body')

Page 49: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

land()

Page 50: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

for i in range(2): navigate(x=0, y=0, z=0.8, speed=1, auto_arm=True, frame_id='body') rospy.sleep(4)

navigate(x=0, y=2, z=0, speed=2, frame_id='body') rospy.sleep(4)

navigate(x=0, y=0, z=1, speed=2, frame_id='body') rospy.sleep(4)

navigate(x=0, y=-2, z=0, speed=2, frame_id='body') rospy.sleep(4)

navigate(x=0, y=0, z=-1, speed=2, frame_id='body') rospy.sleep(4)

Page 51: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

navigate(x=0, y=0, z=1, frame_id='aruco_107')

Page 52: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

navigate(x=0, y=0, z=1, frame_id='aruco_225')

Page 53: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

VPEVision Position Estimation

Page 54: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

navigate(x=0, y=0, z=1.5, speed=1, auto_arm=True, frame_id='body') rospy.sleep(8)

navigate(x=0, y=2.56, z=1.5, speed=3, yaw=0, frame_id='aruco_map') rospy.sleep(8)

navigate(x=0, y=1.28, z=1.5, speed=1, yaw=0, frame_id='aruco_map') rospy.sleep(8)

land()

Page 55: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

def vertical_circle(): RADIUS = 0.75 # m SPEED = 0.5 # rad / s

start = get_telemetry(frame_id='aruco_map') start_stamp = rospy.get_rostime()

r = rospy.Rate(10)

while not rospy.is_shutdown(): angle = (rospy.get_rostime() - start_stamp).to_sec() * SPEED y = start.y + math.sin(angle) * RADIUS z = start.z + math.cos(angle) * RADIUS set_position(x=0, y=y, z=z, frame_id='aruco_map') if angle > math.radians(720): break

r.sleep()

Page 56: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M/get_telemetry

• connected • armed • mode • x, y, z • lat, lon • vx, vy, vz • pitch • roll • yaw • pitch_rate • roll_rate • yaw_rate • voltage • cell_voltage

Input Output• frame_id

Page 57: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Page 58: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MLower level control

• /set_velocity • /set_attitude • /set_rates

Page 59: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MFlip

def flip(): start = get_telemetry() # memorize starting position set_rates(thrust=1) # bump up rospy.sleep(0.2)

set_rates(roll_rate=30, thrust=0.2) while True: telem = get_telemetry()

if -math.pi < telem.roll < -0.2: break

set_position(x=start.x, y=start.y, z=start.z, yaw=start.yaw) # finish flip

Page 60: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MFlip

Page 61: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Raspberry Pi Image

Page 62: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MBuilding image

•QEMU based builder •Configured network •ROS Kinetic •OpenCV •Periphery drivers •CLEVER software package •Additional software •Tests

Page 63: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MWeb interface

Page 64: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MButterfly

Page 65: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MWeb Video Server

Page 66: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCI

Page 67: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

https://github.com/CopterExpress/clever

Page 68: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MProjects

Page 69: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MDrone show

Page 70: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MDrone show

Page 71: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MWarehouse inspection

Page 72: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSpherical protection

Page 73: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSpherical protection

Page 74: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSpherical protection

Page 75: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MSpherical protection

Page 76: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MDrone wars

Page 77: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MCopterHack

Page 78: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O MHow we taught a thousand students how to program drones

Page 79: PX4 in STEM education: How we taught a thousand students how to program … · 2019-06-29 · How we taught a thousand students how to program drones. WEB PAGE Origins (2013) COPTEREXPRESS.COM

WEB PAGE

C O P T E R E X P R E S S . C O M

Andrei Korigodskii

CTO

[email protected]

Alexey Shlykov

COO

[email protected]

Oleg Kalachev

Lead Developer

[email protected]