petrone_v2 for python / Examples / Light

Modified : 2018.3.5



sendLightManual() 함수를 사용하여 조종기 LED 제어하기

import random
from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")


    drone.sendLightManual(DeviceType.Controller, 0xFF, 0)
    sleep(1);
    
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Red.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Red.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Red.value, 0)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Green.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Green.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Green.value, 0)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Blue.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Blue.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, LightFlagsController.Blue.value, 0)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b11000000, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b11000000, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b11000000, 0)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b01100000, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b01100000, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b01100000, 0)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b10100000, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b10100000, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Controller, 0b10100000, 0)
    sleep(1);


    drone.close()



sendLightManual() 함수를 사용하여 드론 LED 제어하기

from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")


    drone.sendLightManual(DeviceType.Drone, 0xFF, 0)
    sleep(1);


    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeRed.value | LightFlagsDrone.ArmRed.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeRed.value | LightFlagsDrone.ArmRed.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeRed.value | LightFlagsDrone.ArmRed.value, 0)
    sleep(1);

    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeGreen.value | LightFlagsDrone.ArmGreen.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeGreen.value | LightFlagsDrone.ArmGreen.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeGreen.value | LightFlagsDrone.ArmGreen.value, 0)
    sleep(1);

    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeBlue.value | LightFlagsDrone.ArmBlue.value, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeBlue.value | LightFlagsDrone.ArmBlue.value, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, LightFlagsDrone.EyeBlue.value | LightFlagsDrone.ArmBlue.value, 0)
    sleep(1);


    drone.sendLightManual(DeviceType.Drone, 0x82, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x82, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x82, 0)
    sleep(1);

    drone.sendLightManual(DeviceType.Drone, 0x42, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x42, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x42, 0)
    sleep(1);

    drone.sendLightManual(DeviceType.Drone, 0x22, 10)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x22, 100)
    sleep(1);
    
    drone.sendLightManual(DeviceType.Drone, 0x22, 0)
    sleep(1);


    drone.close()



sendLightMode, sendLightEvent 함수를 사용하여 조종기 LED 제어하기

from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")


    drone.sendLightModeColor(LightModeController.TeamHold, 200, 0, 0, 0)
    sleep(2); 
    

    #sendLightModeColor*
    drone.sendLightModeColor(LightModeController.TeamDimming, 3, 200, 20, 20)
    sleep(1);
    
    drone.sendLightModeColorCommand(LightModeController.TeamHold, 200, 20, 200, 20, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightModeColorCommandIr(LightModeController.TeamFlicker, 200, 20, 20, 200, CommandType.None_, 0, 0x01020304)
    sleep(1);


    #sendLightModeColors*
    drone.sendLightModeColors(LightModeController.TeamDimming, 3, Colors.Red)
    sleep(1);
    
    drone.sendLightModeColorsCommand(LightModeController.TeamHold, 120, Colors.Green, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightModeColorsCommandIr(LightModeController.TeamFlicker, 200, Colors.Blue, CommandType.None_, 0, 0x01020304)
    sleep(1);


    # sendLightEventColor*
    drone.sendLightEventColor(LightModeController.TeamDimming, 3, 5, 200, 20, 20)
    sleep(1);
    
    drone.sendLightEventColorCommand(LightModeController.TeamHold, 120, 20, 20, 200, 20, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightEventColorCommandIr(LightModeController.TeamFlicker, 200, 5, 20, 20, 200, CommandType.None_, 0, 0x01020304)
    sleep(1);


    # sendLightEventColors*
    drone.sendLightEventColors(LightModeController.TeamDimming, 3, 3, Colors.Red)
    sleep(1);
    
    drone.sendLightEventColorsCommand(LightModeController.TeamHold, 200, 20, Colors.Green, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightEventColorsCommandIr(LightModeController.TeamFlicker, 200, 3, Colors.Blue, CommandType.None_, 0, 0x01020304)
    sleep(1);


    drone.close()



sendLightMode, sendLightEvent 함수를 사용하여 드론 LED 제어하기

from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")


    drone.sendLightModeColor(LightModeDrone.ArmHold, 200, 0, 0, 0)
    sleep(1);


    # sendLightModeColor*
    drone.sendLightModeColor(LightModeDrone.ArmDimming, 3, 200, 20, 20)
    sleep(1);
    
    drone.sendLightModeColorCommand(LightModeDrone.ArmHold, 200, 20, 200, 20, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightModeColorCommandIr(LightModeDrone.ArmFlicker, 200, 20, 20, 200, CommandType.None_, 0, 0x01020304)
    sleep(1);


    # sendLightModeColors*
    drone.sendLightModeColors(LightModeDrone.ArmDimming, 3, Colors.Red)
    sleep(1);
    
    drone.sendLightModeColorsCommand(LightModeDrone.ArmHold, 120, Colors.Green, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightModeColorsCommandIr(LightModeDrone.ArmFlicker, 200, Colors.Blue, CommandType.None_, 0, 0x01020304)
    sleep(1);


    # sendLightEventColor*
    drone.sendLightEventColor(LightModeDrone.ArmDimming, 3, 5, 200, 20, 20)
    sleep(1);
    
    drone.sendLightEventColorCommand(LightModeDrone.ArmHold, 120, 20, 20, 200, 20, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightEventColorCommandIr(LightModeDrone.ArmFlicker, 200, 5, 20, 20, 200, CommandType.None_, 0, 0x01020304)
    sleep(1);


    # sendLightEventColors*
    drone.sendLightEventColors(LightModeDrone.ArmDimming, 3, 3, Colors.Red)
    sleep(1);
    
    drone.sendLightEventColorsCommand(LightModeDrone.ArmHold, 200, 20, Colors.Green, CommandType.None_, 0)
    sleep(1);
    
    drone.sendLightEventColorsCommandIr(LightModeDrone.ArmFlicker, 200, 5, Colors.Blue, CommandType.None_, 0, 0x01020304)
    sleep(1);


    drone.close()



조종기의 LED를 랜덤한 색으로 점점 밝아졌다 어두워지게 하는 명령을 10회 실행 (LightModeColor / sendLightModeColor 함수 사용)

import random
from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")

    for i in range(0, 10, 1):
        
        r    = int(random.randint(0, 255))
        g    = int(random.randint(0, 255))
        b    = int(random.randint(0, 255))

        dataArray = drone.sendLightModeColor(LightModeController.TeamDimming, 1, r, g, b)
        print("{0} / {1}".format(i, dataArray))

        sleep(0.6)
    
    drone.close()



조종기의 LED를 랜덤한 색으로 점점 밝아졌다 어두워지게 하는 명령을 10회 실행 (LightModeColor / 클래스 데이터를 채워서 전송)

import random
from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")

    header = Header()
    
    header.dataType = DataType.LightModeColor
    header.length   = LightModeColor.getSize()
    header.from_    = DeviceType.Tester
    header.to_      = DeviceType.Controller

    data = LightModeColor()

    data.mode.mode      = LightModeController.TeamDimming.value
    data.mode.interval  = 1

    for i in range(0, 10, 1):
        
        data.color.r    = int(random.randint(0, 255))
        data.color.g    = int(random.randint(0, 255))
        data.color.b    = int(random.randint(0, 255))

        dataArray = drone.transfer(header, data)
        print("{0} / {1}".format(i, dataArray))

        sleep(0.6)
    
    drone.close()



조종기의 LED를 랜덤한 색으로 점점 밝아졌다 어두워지게 하는 명령을 10회 실행 (LightModeColors / sendLightModeColors 함수 사용)

import random
from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")

    for i in range(0, 10, 1):
        
        colors = Colors(random.randint(0, Colors.EndOfType.value))

        dataArray = drone.sendLightModeColors(LightModeController.TeamDimming, 1, colors)
        print("{0} / {1}".format(i, dataArray))

        sleep(0.6)
    
    drone.close()



조종기의 LED를 랜덤한 색으로 점점 밝아졌다 어두워지게 하는 명령을 10회 실행 (LightModeColors / 클래스 데이터를 채워서 전송)

import random
from time import sleep

from petrone_v2.drone import *
from petrone_v2.protocol import *


if __name__ == '__main__':

    drone = Drone()
    drone.open("COM22")

    header = Header()
    
    header.dataType = DataType.LightModeColors
    header.length   = LightModeColors.getSize()
    header.from_    = DeviceType.Tester
    header.to_      = DeviceType.Controller

    data = LightModeColors()

    data.mode.mode      = LightModeController.TeamDimming.value
    data.mode.interval  = 1

    for i in range(0, 10, 1):
        
        data.colors    = Colors(random.randint(0, Colors.EndOfType.value))

        dataArray = drone.transfer(header, data)
        print("{0} / {1}".format(i, dataArray))

        sleep(0.6)
    
    drone.close()




petrone_v2 for python

  1. Intro
  2. System
  3. Protocol
  4. Drone
  5. Examples - Ping
  6. Examples - Information
  7. Examples - Pairing
  8. Examples - Control
  9. Examples - Sensor
  10. Examples - Motor
  11. Examples - Setup
  12. Examples - Buzzer
  13. Examples - Vibrator
  14. Examples - Light
  15. Examples - Display
  16. Examples - Input
  17. Examples - Error


Index