banner

소식

Mar 12, 2023

Raspberry Pi Pico의 터치 입력으로 바나나를 사용하는 방법

바나나를 터치하면 LED를 제어할 수 있습니다.

정전식 터치는 유전 상수를 측정하여 사용자 입력을 감지하는 간단한 수단입니다. 기준 측정값과 다른 경우 입력으로 사용할 수 있습니다. 과거에는 MPR121 터치 센서를 사용하여 Raspberry Pi Pico를 사용하여 이벤트를 트리거했습니다. MPR121은 악어 클립 및 표준 와이어 게이지를 위한 다양한 폼 팩터로 제공되는 신뢰할 수 있는 Stemma QT 센서입니다. 우리는 그것을 너무 좋아해서 최고의 Stemma QT 및 Grove 추가 기능 페이지 목록에 올렸습니다. 그런데 센서보드를 사용하지 않고 할 수 있는 방법이 없을까요?

바나나에 있는 전선 한 조각과 1메가옴 저항기를 사용하여 우리만의 터치 인터페이스를 만들고 건강한 간식을 먹을 수 있습니다. 이 방법에서는 바나나를 사용하여 LED를 켜고 끄는 방법을 살펴보겠습니다.

왜 그렇게 간단한가요? LED를 켜고 끄는 방법을 배우는 것은 프로젝트의 모든 부분이 어떻게 작동하는지 이해하는 가장 좋은 방법입니다. 물론 바나나를 스페이스바로 바꿔 플래피 버드(Flappy Birds)를 플레이할 수도 있고, 이를 사용하여 브라우저 창을 열고 친구를 "릭롤(Rick-roll)"하거나 로봇을 시작하여 문을 향해 미친 듯이 돌진할 수도 있습니다. 하지만 그렇게 하기 전에 우리는 사물이 작동하는 방식과 이유를 이해해야 하며, 겸손한 LED는 이를 수행하는 저렴하고 쉬운 방법입니다.

회로에는 입력과 출력이라는 두 부분이 있습니다. 입력은 긴 점퍼 와이어를 사용하여 Raspberry Pi Pico의 GPIO 16에 연결된 바나나(옵션)입니다. GPIO 16에는 GND에 연결하기 위한 1MΩ 저항도 있습니다. 이는 풀다운 저항이며 GPIO 핀이 일정한 0V 기준을 확인하도록 보장합니다. 그렇지 않으면 입력이 불규칙할 것입니다. 이 프로세스는 여러 입력에 대해 반복될 수 있으며 유일한 제한은 GPIO 핀, 1MΩ 저항기 및 바나나입니다.

출력은 긴 다리(양극)가 GPIO 15에 연결되고 짧은 다리(음극)가 100Ω 저항을 통해 GND에 연결된 간단한 LED입니다.

바나나는 전도성이 있는 어떤 것으로든 교체할 수 있습니다. 알루미늄 호일, 플레이도우 및 기타 과일/채소를 투입물로 사용할 수 있습니다. 베어 와이어에 대한 요리 입력을 생략할 수도 있습니다. 어떤 경우에는 이것이 더 잘 작동합니다.

계속 진행하기 전에 회로를 구축하고 연결을 다시 확인하세요.

우리는 두 가지 주요 이유로 이 프로젝트에서 CircuitPython을 선택했습니다. 첫째, 사용하고 이해하기가 매우 쉽습니다. 우리의 코드는 읽기 쉽고 디버그할 수 있으며 Chromebook을 비롯한 모든 기기에서 작성할 수 있습니다. 둘째, CircuitPython에는 GPIO를 사용하여 터치 입력을 쉽게 생성할 수 있는 Touchio 모듈이 있습니다. 하지만 프로젝트를 시작하기 전에 최신 버전의 CircuitPython을 Raspberry Pi Pico에 작성해야 합니다.

1.Raspberry Pi Pico의 공식 CircuitPython 페이지로 이동하세요.그리고최신 릴리스 UF2 펌웨어 이미지를 다운로드하십시오. 이 글을 쓰는 시점에는 CircuitPython 8.10이었습니다. Wi-Fi가 필요하지 않기 때문에 Raspberry Pi Pico를 선택했지만 이 프로젝트를 사용하여 웹 이벤트를 트리거할 수 있으므로 Raspberry Pi Pico W가 필요합니다.

2.BOOTSEL 버튼을 누른 상태에서 Raspberry Pi Pico를 컴퓨터에 연결합니다.새로운 드라이브인 RPI-RP2가 나타납니다.

삼.다운로드한 CircuitPython UF2 파일을 RPI-RP2에 복사합니다. 그러면 Pico의 내부 플래시 저장소에 CircuitPython이 기록됩니다. 새로운 드라이브 CIRCUITPY가 나타납니다.

코드를 작성하기 위해 Windows 10에서 Thonny를 사용했습니다. 원하는 텍스트 편집기를 자유롭게 사용할 수 있지만 Thonny는 훌륭한 CircuitPython(및 MicroPython) 통합 기능을 갖추고 있어 사용하기 쉽습니다. 무엇보다도 Windows, macOS 및 Linux 장치에 무료로 쉽게 설치할 수 있습니다.

1.Thonny 다운로드 및 설치아직 갖고 있지 않다면.Thonny는 Python 3, MicroPython 및 CircuitPython을 다루는 Python 편집기입니다.

2.Thonny를 열고 도구 >> 옵션으로 이동하세요.

삼.인터프리터를 선택한 다음 인터프리터를 CircuitPython으로 설정하고 포트를 자동으로 설정한 후 확인을 클릭합니다.이제 Thonny는 CircuitPython을 실행하는 Pico에 연결됩니다.

> Open and select the CircuitPython device. Then select code.py. /strongCode.py is used by CircuitPython as the main file for a project. It is set to auto-run when the Pico is powered up./p>

> Options. Select Interpreter, then set the interpreter as CircuitPython, port to automatic, and click OK. Click on File >> Open and select the CircuitPython device. Then select code.py. Delete any code in code.py. Import four modules of code necessary for the project to work. Create an object, led, and set the GPIO pin to GP15, and then set it to be an output. Create an object, led_state and store the integer value 0 inside of it. Create an object, touch_pin Create a loop to continually run the code. Inside the loop create a print function that will report the current state of the touch input pin. Write a conditional test to check if the input has been touched, and that the LED is turned off. Set the LED to turn on, then update the led_state object to 1, . Sleep for half a second Create a conditional test to check if the input has been touched and that the LED is currently on. Toggle the LED off, update the led_state object pause for half a second. Outside of the conditional tests, but still inside the loop, pause the code for 0.1 seconds. Save the code to code.py on the CircuitPython device click on Stop and then Run. Touch the banana to toggle the LED on / off./strong>
공유하다