펌웨어 자체 기능

모터 강제 종료

STOP 버튼을 1.5초 동안 누릅니다.


데이터 타입 및 상세 정보

BuildHat()

빌드햇 자체의 기능을 사용합니다.

버튼 인스턴스

stop_button(_button)

정지 버튼이 할당된 인스턴스입니다.


start_button(_button)

시작 버튼이 할당된 인스턴스입니다.


_button 인스턴스 함수

is_pressed() -> bool

해당 버튼의 눌림 여부를 반환합니다.


LED 인스턴스

stop_led(_led)

시작버튼 옆에 위치한 LED의 제어 인스턴스 입니다. (Jetson Only)


start_led(_led)

시작버튼 옆에 위치한 LED의 제어 인스턴스 입니다. (Jetson Only)

_led 인스턴스 함수

set(int) -> None

해당 LED를 점등/소등 합니다. (1 = On, 0 = off)

예시


from HandsON_BuildHat_API import BuildHat

hat = BuildHat()
button_value = hat.start_button.is_pressed()

print(f'start button : {button_value}')

hat.start_led.set(1)
        

ColorSensor(port)

컬러센서의 기능을 사용합니다.

ColorSensor 함수

get_color() -> str

색상 값을 반환합니다.


get_reflected_light() -> int

반사광 값을 반환합니다.


get_rgb_intensity() -> tuple

원시 RGB 값을 반환합니다.


get_red() -> int

원시 RED 값을 반환합니다.


get_green() -> int

원시 GREEN 값을 반환합니다.


get_blue() -> int

원시 BLUE 값을 반환합니다.

예시


from HandsON_BuildHat_API import ColorSensor

sensor = ColorSensor('A')

color = sensor.get_color()
reflected = sensor.get_reflected_light()
rgb = sensor.get_rgb_intensity()

print(f'color : {color}, reflected : {reflected}, rgb : {rgb}')
        

DistanceSensor(port)

거리센서의 기능을 사용합니다.

DistanceSensor 함수

get_distance_cm() -> int

거리 값을 반환합니다.

예시


from HandsON_BuildHat_API import DistanceSensor

sensor = DistanceSensor('A')

distance = sensor.get_distance_cm()

print(f'distance : {distance}')
        

ForceSensor(port)

힘센서의 기능을 사용합니다.

ForceSensor 함수

is_pressed() -> bool

접촉 여부를 반환합니다.


get_force_percentage() -> int

힘 값을 반환합니다.

예시


from HandsON_BuildHat_API import ForceSensor

sensor = ForceSensor('A')

touch = sensor.get_distance_cm()
force = sensor.get_force_percentage()

print(f'touch : {touch}, force : {force}')
        

Motor(port)

모터의 기능을 사용합니다.

Motor 함수

stop() -> None

모터를 정지합니다.


start(speed:int) -> None

speed의 속도로 모터를 동작시킵니다.


run_to_position(degress:int, speed:int) -> None

degress의 각도까지 speed의 속도로 모터를 동작시킵니다.


run_for_degrees(degress:int, speed:int) -> None

현재 위치에서 degress의 각도 만큼 speed의 속도로 모터를 동작시킵니다.


get_speed() -> int

모터의 현재 속도를 반환합니다.


get_position() -> int

모터의 현재 각도를 반환합니다.


get_degrees_counted() -> int

모터의 전원이 인가된 후 부터의 변화한 각도의 총량을 반환합니다.

예시


from HandsON_BuildHat_API import Motor

motor = Motor('A')

motor.start(50)
now_speed = motor.get_speed()

print(f'motor speed : {now_speed}')
        

MotorPair(left_motor, right_motor)

모터 2개를 동시에 사용해 주행 기능을 사용합니다.

MotorPair 함수

stop() -> None

모터를 정지시킵니다.


start(steering:int, speed:int) -> None

speed의 속도로 steering의 조향값으로 주행합니다.


move(degrees:int, steering:int, speed:int) -> None

speed의 속도로 steering의 조향값으로 degrees의 각도만큼 주행합니다.


start_tank(left_speed:int, right_speed:int) -> None

좌측모터는 left_speed의 속도로, 우측 모터는 right_speed의 속도로 주행합니다.


move_tank(degrees:int, left_speed:int, right_speed:int) -> None

좌측모터는 left_speed의 속도로, 우측 모터는 right_speed의 속도로 degrees의 각도만큼 주행합니다.

예시


from HandsON_BuildHat_API import MotorPair

drive = MotorPair('A', 'B')

drive.start(0, 50)