News Download Tutorial FAQ Reference Buy

파이썬 : Roboid 패키지 : Roboid

바로가기
함수

열거형 상수

클래스
개요
로보이드를 구성하는 디바이스를 찾거나 리스너를 등록 및 제거하는 메소드를 정의합니다.

클래스 상속 관계:
메소드
버전 1.0부터
addDeviceDataChangedListener(listener)
포함된 모든 디바이스에 대해 디바이스의 데이터가 갱신되었을 때 호출되도록 콜백 함수 listener를 등록한다.

listener는 onDeviceDataChanged(device, values)의 형태를 가지는 함수여야 한다. 여기서 device는 Device 객체이고, values는 해당 디바이스(device)의 데이터 리스트를 튜플 형태로 변환한 것이다.

파라미터:
  • listener: 등록할 리스너 함수

def onDeviceDataChanged(device, values):
    if device.getId() == Hamster.LEFT_PROXIMITY:
        leftProximity = values[0]

def someFunction(roboid):
    # 리스너 콜백 함수를 등록한다.
    roboid.addDeviceDataChangedListener(onDeviceDataChanged)
버전 1.0부터
clearDeviceDataChangedListeners()
포함된 모든 디바이스에 대해 등록된 모든 리스너 콜백 함수를 제거한다.
버전 1.0부터
findDeviceById(deviceId)
자식 디바이스 중에서 ID가 deviceId인 디바이스를 찾아 객체를 반환한다.

ID가 deviceId인 자식 디바이스가 없으면 None을 반환한다.

파라미터:
  • deviceId: 찾을 디바이스의 ID(정수)

반환 값:
    디바이스 객체(Device) 또는 None

def someFunction(roboid):
    # 왼쪽 바퀴 이펙터 디바이스의 객체를 얻는다.
    device = roboid.findDeviceById(Hamster.LEFT_WHEEL)
버전 1.0부터
findDeviceByName(name)
자식 디바이스 중에서 이름이 name인 디바이스를 찾아 객체를 반환한다.

이름이 name인 자식 디바이스가 없으면 None을 반환한다. 이 때, 자식 로보이드에 포함된 디바이스의 이름은 '자식로보이드.디바이스'와 같이 '.'으로 구분된 형식을 사용한다. 예: 'Child.Light'

파라미터:
  • name: 찾을 디바이스의 이름(문자열)

반환 값:
    디바이스 객체(Device) 또는 None

def someFunction(roboid):
    device = roboid.findDeviceByName('Light')
버전 1.0부터
findRoboidByName(name)
자식 로보이드 중에서 이름이 name인 로보이드를 찾아 객체를 반환한다.

이름이 name인 자식 로보이드가 없으면 None을 반환한다. 이 때, 자식 로보이드에 포함된 로보이드의 이름은 '자식로보이드.로보이드'와 같이 '.'으로 구분된 형식을 사용한다. 예: 'Child.Pen'

파라미터:
  • name: 찾을 로보이드의 이름(문자열)

반환 값:
    로보이드 객체(Roboid) 또는 None

def someFunction(roboid):
    # 펜 로보이드의 객체를 얻는다.
    pen = roboid.findRoboidByName('Pen')
버전 1.0부터
getName()
로보이드의 이름을 반환한다.

반환 값:
    이름을 나타내는 문자열

def someFunction(roboid):
    # 로보이드의 이름을 얻는다.
    name = roboid.getName()
버전 1.0부터
removeDeviceDataChangedListener(listener)
포함된 모든 디바이스에 대해 등록된 리스너 콜백 함수 목록에서 listener를 제거한다.

listener는 onDeviceDataChanged(device, values)의 형태를 가지는 함수여야 한다. 여기서 device는 Device 객체이고, values는 해당 디바이스(device)의 데이터 리스트를 튜플 형태로 변환한 것이다.

파라미터:
  • listener: 제거할 리스너 함수

def onDeviceDataChanged(device, values):
    if device.getId() == Hamster.LEFT_PROXIMITY:
        leftProximity = values[0]

def someFunction(roboid):
    # 리스너 콜백 함수를 제거한다.
    roboid.removeDeviceDataChangedListener(onDeviceDataChanged)
버전 1.0부터
setName(name)
로보이드의 이름을 name으로 설정한다.

파라미터:
  • name: 설정할 이름(문자열)

def someFunction(roboid):
    # 로보이드의 이름을 'Pen'으로 설정한다.
    roboid.setName('Pen')
Copyright Robot Software Education Institute. All rights reserved.
Please contact prof. Kwang-Hyun Park (akaii@kw.ac.kr) if you have any problem.