PythonのpySerialでシリアル通信する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonのpySerialでシリアル通信する方法について現役エンジニアが解説しています。シリアル通信はPCと機器を接続してデータの送受信をする為の通信企画です。pySerialをpipからインストールしてPythonでシリアル通信を行ってみましょう。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

PythonのpySerialでシリアル通信する方法について解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PythonのpySerialでシリアル通信する方法について詳しく説明していくね!

大石ゆかり

お願いします!

※Windows10環境での解説記事になります。

シリアル通信とは

主にPCと機器を接続してデータの送受信をする為の通信企画です。少ない信号線での接続が可能なので、コストが抑えられるというメリットがあります。

枯れた技術ですが、今でも現役で使われている便利な通信規格です。

pySerialとは

pythonでシリアル通信をする為のモジュールになります。

[PR] Pythonで挫折しない学習方法を動画で公開中

pySerialのインストール方法 ・実際に書いてみよう

pySerialをpipからインストールしましょう。

pip install pyserial

Collecting pyserial
Downloading https://files.pythonhosted.org/packages/0d/e4
/2a744dd9e3be04a0c0907414e2a01a7c88bb3915cbe3c8cc06e209f59c30
/pyserial-3.4-py2.py3-none-any.whl (193kB)
|■| 194kB 2.2MB/s
Installing collected packages: pyserial
Successfully installed pyserial-3.4

正常にインストールできました。

接続させるCOMポートの番号は、そのUSB-シリアルを接続させる前と後とにデバイスマネージャーでCOMポート表示をさせると、新規に現れたポート番号が、そのUSB-シリアルのポート番号です。Pythonにシリアルポートを接続します。

port1 = serial.Serial('/dev/ttyUSB2', 1)

それでは接続した機器にwriteしてみます。

port1.write(b'Hello Python')

書き込んだデータをreadします。

read_char =port1.read(12)
print(read_char)

シリアルポートをcloseします。

port1.close()

簡単ではありますが、pyserialの説明をしました。

監修してくれたメンター

坂下雄一(さかしたゆういち)

外資系のEDAベンダで、エンジニアとして働いた後、東南アジアにて起業しました。PythonはEDAのコマンド自動化、テスト環境構築の時に初めて使用し、素晴らしいと思い、今に至ります。

EDAの環境構築、手順の自動化は、tcl/tkというコマンド言語がメインですが、Pythonで置き換える作業も最近は盛んになってきています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。