Python3とArduinoコミュニケーション
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 |
このプロジェクトについて
プロジェクトの説明
このプロジェクトでは、Python3からArduinoボードにコマンドを送信します。これにより、Python3とArduinoの間で通信するときに理解しやすくなります。 Arduinoプラットフォームの「Helloworld」を作成します。これは、ArduinoUnoの内蔵LEDをオン/オフすることを意味します。
それで、まず最初にあなたに話させてください...
このプロジェクトを作った理由
第一に、このトピックについて特にyoutubeにインターネット上にアップロードされた多くのチュートリアルがありますが、それらはPython2バージョンを使用しており、第二に、Python3.7.2である最新バージョンをインストールしました。 Arduinoとの接続にPython2とPython3を使用している場合、Python2とPython3には少し違いがあります。そのため、Python3からArduinoにコマンドを送信する問題を解決した後、これをメーカーと趣味のコミュニティ全体に共有する必要があると思いました。
以下の手順に従って始めましょう:
インストール手順
- python3バージョンのインストール方法 および PySerial パッケージ
これで、インストールに関するものについてYouTubeで検索できます。以下は、Python3バージョンとPySerialパッケージの両方をインストールするためのビデオです。
デモ
- パート1:Arduinoコード
- パート2:Pythonコード
注
最初にArduinoスケッチをアップロードし、次にPythonコードをアップロードするようにしてください。 :)
このプロジェクトの作成中に問題が発生した場合は、コメントセクションでお知らせください。
<図>
コード
- Arduinoコード
- Python3コード
Arduinoコード Arduino
このコードはarduino用であり、Pythonコードを実行する前にこのコードをアップロードする必要がありますint datafromUser =0; void setup(){//セットアップコードをここに配置して1回実行します:pinMode(LED_BUILTIN、OUTPUT); Serial.begin(9600);} void loop(){//メインコードをここに配置して繰り返し実行します:if(Serial.available()> 0){datafromUser =Serial.read(); } if(datafromUser =='1'){digitalWrite(LED_BUILTIN、HIGH); } else if(datafromUser =='0'){digitalWrite(LED_BUILTIN、LOW); }}
Python3コード Python
import serialimport timearduino =serial.Serial( 'COM1'、9600)time.sleep(2)print( "1を入力してLEDをオンにし、0を入力してLEDをオフにする")while 1:datafromUser =input()if datafromUser =='1':arduino.write(b'1 ')print( "LEDがオンになりました")elif datafromUser ==' 0 ':arduino.write(b'0')print( "LEDがオフになりました")
回路図
このプロジェクトでは、arduinoボードとUSBケーブルが必要です 製造プロセス