Esempio n. 1
0
def appendWaypoint(request):
    waypoint = request['body']['waypoint']
    vehicle = request['vehicle']
    cmds = vehicle.commands
    cmds.download()
    cmds.wait_ready()
    if waypoint['action'] == 'takeoff':
        commands.takeoff(vehicle, waypoint['alt'], cmds)
    elif waypoint['action'] == 'goto':
        commands.goto(waypoint['lat'], waypoint['lng'], waypoint['alt'], cmds)
    elif waypoint['action'] == 'land':
        commands.land(waypoint['lat'], waypoint['lng'], cmds)
    elif waypoint['action'] == 'landv':
        commands.landVertical(cmds)
    elif waypoint['action'] == 'rtl':
        commands.rtl(cmds)
    cmds.upload()
    commands.startmission(
        vehicle)  #comando necessario caso o veiculo esteja no solo
    #if cmds.next == 0: #estes comandos estao sendo testados para tratar o problema 2.
    #    print 'next = 0'
    #    cmds.next = cmds.count
    #if cmds.next == cmds.count - 1:
    #    print 'next = count -1'
    #    cmds.next = cmds.count
    return {'status-append-waypoint': 'ok'}
Esempio n. 2
0
def setMission(request):
    mission = request['body']['mission']
    vehicle = request['vehicle']
    cmds = vehicle.commands
    cmds.clear()
    for item in mission:
        if item['action'] == 'takeoff':
            commands.takeoff(vehicle, item['alt'], cmds)
        elif item['action'] == 'waypoint':
            commands.goto(item['lat'], item['lng'], item['alt'], cmds)
        elif item['action'] == 'land':
            commands.land(item['lat'], item['lng'], item['alt'], cmds)
        elif item['action'] == 'rtl':
            commands.rtl(cmds)
    cmds.upload()
    commands.startmission(vehicle)
    return {'status-set-mission': 'ok'}
Esempio n. 3
0
def setWaypoint(request):
    waypoint = request['body']['waypoint']
    vehicle = request['vehicle']
    cmds = vehicle.commands
    cmds.clear()
    cmds.next = 0
    if waypoint['action'] == 'takeoff':
        commands.takeoff(vehicle, waypoint['alt'], cmds)
    elif waypoint['action'] == 'goto':
        commands.goto(waypoint['lat'], waypoint['lng'], waypoint['alt'], cmds)
    elif waypoint['action'] == 'land':
        commands.land(waypoint['lat'], waypoint['lng'], cmds)
    elif waypoint['action'] == 'landv':
        commands.landVertical(cmds)
    elif waypoint['action'] == 'rtl':
        commands.rtl(cmds)
    cmds.upload()
    commands.startmission(
        vehicle)  #comando necessario caso o veiculo esteja no solo
    return {'status-set-waypoint': 'ok'}
Esempio n. 4
0
def setWaypoint(request):
    point = request['body']['waypoint']
    vehicle = request['vehicle']
    cmds = vehicle.commands
    cmds.download()
    cmds.wait_ready()
    finished = True if cmds.next == cmds.count else False
    print "finished status:"
    print finished
    if point['action'] == 'takeoff':
        commands.takeoff(vehicle, point['alt'], cmds)
    elif point['action'] == 'waypoint':
        commands.goto(point['lat'], point['lng'], point['alt'], cmds)
    elif point['action'] == 'land':
        commands.land(point['lat'], point['lng'], point['alt'], cmds)
    elif point['action'] == 'rtl':
        commands.rtl(cmds)
    cmds.upload()
    if finished:
        commands.startmission(vehicle)
    return {'status-set-waypoint': 'ok'}
Esempio n. 5
0
def appendMission(request):
    mission = request['body']['mission']
    vehicle = request['vehicle']
    cmds = vehicle.commands
    cmds.download()
    cmds.wait_ready()
    for item in mission:
        if item['action'] == 'takeoff':
            commands.takeoff(vehicle, item['alt'], cmds)
        elif item['action'] == 'goto':
            commands.goto(item['lat'], item['lng'], item['alt'], cmds)
        elif item['action'] == 'land':
            commands.land(item['lat'], item['lng'], cmds)
        elif item['action'] == 'landv':
            commands.landVertical(cmds)
        elif item['action'] == 'rtl':
            commands.rtl(cmds)
    cmds.upload()
    commands.startmission(
        vehicle)  #comando necessario caso o veiculo esteja no solo
    return {'status-append-mission': 'ok'}