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

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

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

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を使って機械学習の基礎を学ぶPythonオンライン講座を開催しています。初心者向けの書籍を使って人工知能(AI)や機械学習について学ぶことができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。