005 なぜPythonを使って測定機器をコントロールするのか

2022/03/12

紹介/Python

t f B! P L

測定機器をコントロールする手段は,Python以外にも幾つもあります(下記にPythonも含めて紹介します).

  • LabVIEW
  • Excel (VBA)
  • C# Visual Basic .NET
  • Python

このうち,測定機器をコントロールする手段として,LabVIEWは有名です.


LabVIEWは,プログラミング経験の無い方(ノンプログラマー)でも,画面上にアイコンを配置することで,測定機器をコントロールするシステムを構築することができるので,ノンプログラマーな方は,「LabVIEWでいいんじゃない」と考えると思います.

確かに,LabVIEWを使って測定機器をコントロールするシステムを開発することを否定する気はありません.
但し,LabVIEWを使って測定システム開発を構築する場合

  • LabVIEWは有償
  • 測定システム以外のこと(例えば,測定で得られたデータを処理するなど)を実施するには,LabVIEWだけでは難しい

ことが挙げられます.

一方,未だにExcelVBA(Visual Basic for Application: いわゆるExcelマクロ)を使って,測定機器をコントロールするトレーニングコースも募集されていますが,Excelマクロを使って測定機器をコントロールするのは,この投稿でも紹介していますが,やめた方が良いです.結局,メンテナンスできなくなってしまう危険が高いです.

これに対し,C#Pythonを使って測定システムを構築する手段だと,

  • 無償(但し,C#で開発したシステムを商用で販売するケースは,一部を除いて有償)
  • 測定システム以外のこと(測定で得られたデータを処理するなど)も同じ開発環境で作成できる

メリットが挙げられます.

「じゃあ,測定システムの構築に,C#とPythonを使った時の違いは」という疑問が湧くのも当然です.
C#を使って測定システムを構築する場合と,Pythonを使って測定システムを構築する場合の最大の違いは,
    C#のプログラムはノンプログラマーには(やっぱり)敷居が高い
ことが挙げられます.

C#はプログラミング言語として優れています.GUIは簡単につくれますし,プログラムの作成という観点からは,C/C++とは比較にならない程ラクです(同じ処理を行うプログラムを作成したとして,C/C++で作成するよりも,C#で作成した方が,作成に要する時間がずっと短くて済みます).

C#はプログラミング言語として非常に優れていますが,反面,Pythonと比べて,プログラミング言語として側面が強く,ノンプログラマーC#を使ってプログラミングを行うのは,学習に要する時間が長くなると思います(途中で挫折することもあるでしょう).

これに対し,Pythonは,C#よりも,ずっとノンプログラマーに易しいです.
メジャーメントラボが,Pythonを使って測定システムを構築することを決めたのは,実際に測定システムを使う/構築する方が,必ずしもプログラマーではない(ノンプログラマー)ケースが大半であると思っているからです.



このブログを検索

自己紹介

C++やC#を使って数値解析プログラムの開発を長年行ってきました.
今は,Pythonを使った自動処理システムの開発をメインに行っています.

QooQ