제조공정
| × | 1 | ||||
| × | 1 |
| ||||
|
마우스나 트랙패드를 사용하여 컴퓨터의 커서를 추적하는 대신 조이스틱을 사용하여 동일한 응용 프로그램을 만들었습니다. 조이스틱은 커서를 임의의 방향(x 및 Y축)으로 이동할 수 있으며 내장된 조이스틱의 스위치로 클릭 기능도 수행합니다.
기본 사항-
조이스틱은 일반적으로 x 및 y 방향으로 정렬된 2개의 전위차계로 구성됩니다. arduino는 0에서 1023 사이의 범위에서 조이스틱에서 아날로그 값을 읽습니다. 따라서 조이스틱이 기본(중앙) 위치에 있을 때 아날로그 값도 500(0에서 1023 사이)에 가까워집니다.
arduino 스케치는 조이스틱이 중앙에서 멀어질 때 위치에 따라 -sensitivity에서 +sensitivity 값(기본 값은 10) 범위의 값을 인쇄하도록 프로그래밍되어 있습니다. 따라서 조이스틱을 한 극단 위치로 이동하면 arduino가 값 10을 인쇄하고 조이스틱을 다른 극단 위치로 이동하면 -10을 인쇄합니다.
x 및 y 방향에 대한 개별 값을 인쇄하려면 x 및 y 방향 값 사이에 ":"를 사용합니다. 예:
시리얼 모니터에 x, y 값 뒤에 조이스틱 버튼(SW)의 상태가 출력됩니다(1/0).
랩톱/컴퓨터가 값을 인식하려면 python의 pyautogui 모듈이 필요합니다.
파이썬 프로그래밍
(2020년 12월 11일 수정 - 라이브러리를 'pyautogui'에서 '마우스'로 변경)
사용자는 랩톱/컴퓨터에 python 3이 설치되어 있어야 합니다. 여기에서 다운로드할 수 있습니다.
설치 후 python 파일 위치의 경로를 복사합니다.
다음 단계는 명령 프롬프트에서 수행해야 합니다. 명령 프롬프트를 열고 다음을 입력하십시오-
1. cd
2. py –m pip 설치 –-upgrade pip
3. py –m pip 설치 마우스
4. py -m pip 설치 pyserial
마우스 모듈은 마우스 동작 및 pyserial을 수행하는 데 사용됩니다. 모듈은 arduino에서 데이터를 주고받는 데 사용됩니다. 필요한 모듈을 이미 설치했기 때문에 이것을 얻었습니다.
파이썬 프로그램은 아두이노에서 출력된 데이터를 읽고 x를 인식하도록 만들어졌습니다. 및 y 방향 값 및 스위치(SW)의 상태.
커서의 현재 좌표는 마우스 함수 mouse.get_position()
에서 가져옵니다. 커서의 X 및 Y 좌표를 픽셀 형태로 제공합니다.
조이스틱을 움직이면 arduino에서 제공하는 아날로그 값과 현재 커서의 위치가 더해져 커서가 원하는 방향으로 이동합니다.
커서를 주어진 방향으로 이동하려면 mouse.move(X+x,Y+y)
함수 이 목적을 충족합니다.
여기서 X와 Y는 현재 커서의 위치이고 x와 y는 arduino에서 제공하는 증가/감소 위치입니다.
예:mouse.moveTo(100,150)
커서를 x축의 100픽셀, y축의 150픽셀로 이동합니다.
SW 상태에 따라 클릭 동작을 수행하려면 mouse.click(button="left")
사용됩니다.
최종 실행
arduino 스케치(아래 참조)를 arduino UNO에 업로드하고 회로도에 표시된 대로 조이스틱을 arduino 핀에 연결합니다.
마우스와 pyserial이 컴퓨터/노트북에 설치되어 있는지 확인한 후 다음 단계를 수행하십시오.
1. python 스케치를 메모장 파일에 복사합니다. arduino의 올바른 COM 포트를 지정하십시오. 장치 관리자에서 arduino 보드가 연결된 COM 포트를 얻을 수 있습니다. 변경 후 파일을 ".py"로 저장하십시오.
2. python의 IDLE(python GUI)를 열고 메모장 파일을 엽니다.
3. 모듈을 실행합니다.
그러면 그림 4의 화면으로 돌아갑니다.
오류가 표시되면 IDLE을 다시 시작하고 arduino의 올바른 COM 포트를 언급했는지 확인하세요.
오류가 없으면 조이스틱을 움직이면 커서의 움직임을 볼 수 있습니다.
섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">
# 조이스틱 제어 마우스# 작성자:Shubham Santosh# 마지막 편집 2020-01-12 마우스 가져오기, 시스템 가져오기 시간 가져오기 serialmouse.FAILSAFE=FalseArduinoSerial=serial.Serial('com3',9600) #올바른 COM porttime.sleep(1 ) #1초 동안 1초 지연:data=str(ArduinoSerial.readline().decode('ascii')) #데이터 읽기 (x,y,z)=data.split(":") # x에 할당, y and z (X,Y)=mouse.get_position() #커서의 현재 위치 읽기 (x,y)=(int(x),int(y)) #int로 변환 mouse.move(X+x,Yy ) # z에 '1'이 있으면 커서를 원하는 위치로 이동:# SW 상태 읽기 mouse.click(button="left") # 왼쪽 버튼 클릭섹션>
제조공정
구성품 및 소모품 Arduino UNO × 1 SG90 마이크로 서보 모터 × 1 HC-05 블루투스 모듈 × 1 브레드보드(일반) × 1 점퍼 와이어(일반) × 1 앱 및 온라인 서비스 Arduino IDE 이 프로젝트 정보 이 프로젝트에서는 Bluetooth를 통해 스마트폰 애플리케이션을 사용하여 서보 모터를 제어하는 방법을 보여 드리겠습니다. 이 프로젝트에서는 Arduino
구성품 및 소모품 Arduino UNO × 1 12V 200rpm DC 모터 × 2 Arduino Uno용 L293D 모터 드라이브 실드 × 1 HC-05 블루투스 모듈 × 1 브레드보드(일반) × 1 점퍼 와이어(일반) × 1 앱 및 온라인 서비스 Arduino IDE 이 프로젝트 정보 안녕하세요! 제어할 수 있는 모든 것이 좋습니다. 그렇지 않아? 우리 인간은 물건을