Python

【製造業エンジニア】プログラミング言語選びで失敗したくない!

更新日:

中小の製造の現場では今、IoTやペーパーレスといったデジタル化の波が来ています。親会社やグループ会社のプレッシャーで、なんだかわからないままに、「スマート工場」だの「インダストリー4.0」だのの掛け声をかけている社長さんも多いでしょう。

プログラムには無数の種類があり、それぞれ得意分野があります。いざ、やれ!と言われた非プログラマーがこれからプログラミングを覚えるにあたって、どんな言語を学んでいけばよいのでしょうか。

製造業エンジニアのプログラミング言語選び

私は35歳まで、プログラミングとは無縁でした。しかし、冒頭の流れで急遽社内に技術部が立ち上がり、そこでSEもどきをやるはめになったのです。そんな私がまず困ったのが、「無数にあるプログラミング言語から、なにを選択すればよいのか」ということです。

2017年発行の「プログラミング言語図鑑」という本には、現在約1500種類あり、まだ増え続けているとのこと。35歳という年齢は、1500種類のプログラミング言語から適当に選んだものがハズれだった場合、取り返しがつきません。

やはり現場で使えるプログラムを作れる言語が必要である

ということに着目し、業務でよく使われる言語はエクセルのVBAだと知りました。エクセルでプログラムが組めるとは目からウロコです。会社のパソコンには大抵エクセルが入っているので、プログラミング環境は整っていることになります。

エクセルVBAは調べてみると、やりたいことのほとんどが出来そうなことがわかります。マルチメーターとの通信やI/Oの制御まで。音を出したり、セルの色を変えたりすることも簡単です。これはいい!!ということでしばらくはVBAに取り組んだのですが、エクセルには解決しがたい落とし穴があったんです・・・。

エクセルの問題点

エクセルにはバージョンがあります。Excel 2010や2013、2016といったバージョンです。

このバージョンによっては、エクセルはオフラインでは使えないんですね。たとえば2013、2016は30日に1回アクティベートしなければ、主な機能が無効になりVBAプログラムが動かなくなります。職場でVBAプログラムを動かしたいPC全てをインターネットに接続すれば問題ないのですが、50台も60台もあるPCすべてにセキュリティをかけ、ネット接続するほど中小企業にはゆとりがありませんし、そもそも作業現場のPCにインターネットは必要ないんですよね。

このミスマッチが、大きな問題だったのです。現状はインターネットにつながなくても問題なく使えるEXCEL 2010が入っているPCが大半です。しかし、このPCはWindows7で、2020年にサポートが切れてしまいます。今買い替えると、エクセルは2016になり、インターネット必須となるのです。

このような問題が発覚し、「エクセルメインでプログラムを組んでいくのは危険だな」と考え直しました。脱エクセルです。

*ちなみに時期Excel 2019(?)では、オフラインでも使用できるバージョンが登場するとかしないとか。。。2013、2016はどうなっちゃうんでしょうかね。

製造業のプログラミング言語としてPythonはイケる!

上記のエクセル問題があり、途方に暮れて新しい言語を探すことになります。

本職プログラマーは1年に1言語、新しい言語に挑戦するツワモノもいるようですが、私のような駆け出しのエンジニアには後がありません。Amazonで闇雲に言語本を当たっていると、「退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング」という1冊の本に出会います。

PythonはAIの分野で使われている言語という認識しかありませんでしたが、この本を読むと、どんなことが自動化できるのかよくわかります。また、自分でプログラムを作ってみることができます。本の評価が高い理由がよくわかりました。

Pythonのことをより調べてみると、IoTに向いていること。他の言語との親和性が高いこともわかります。Python自体はVBAやVBのようにソフトウェアの画面(GUI)を簡単に作ることは難しいようですが、たとえば、画面はWebの技術で、バックグランドの処理はPythonでといったことが可能とわかりました。

Pythonでは苦手と言われているGUIの作成も、いくつかツールがあり、手間はかかりますが、実際に作ることが出来ました。PyQtを使ったWindows向けのデスクトップアプリ制作にチャレンジした記録も何れ載せていきます。

VBAでプログラムを作るにはExcelが必須でしたが、Pythonでプログラムを作るのに必要なものはパソコンだけです。言語も、開発環境ソフトも無料で手に入るんですね。そして、わからないことは検索すると、たいてい誰かが答えを出しててくれています。この辺が人気言語のうれしいところです。

IoTは製造業を救う!?IoTデバイスのプログラムはPythonが主流

製造業エンジニアの私がPythonに着目している理由はまだあります。製造業は現在、「猫も杓子もIoT状態」で、IoTの意味を解さないままにトップダウンでIoT化の指令が飛んでいる業界です。

ですが、個人的にはIoT化は中小の製造業企業を救う大きな変革点と捉えています。IoTで何ができるのかを学べば、社内のあらゆる作業で効率化・自動化が可能であることが見えてきます。その時に必要になってくるプログラミング言語がPythonです。製造業IoTでは、通常IoTデバイスというセンサー信号を受ける機器を使います。この危機へのプログラミング言語としてPythonが選ばれているんですね。

そんな理由からも、製造業エンジニアがプログラミング言語の選定で悩んだ時にはPythonが良いのだろうと感じています。Pythonは、IoTデバイスのプロトタイプとしてよく選ばれるRaspberry Piの主要言語ですしね。

さいごに

日本では、プログラマー含むIT人口の不足数が2020年で37万人に達するというデータもあります。良いプログラマーは高給で大きな会社に行ってしまいますね。

これからは中小製造業の技術者は、自分で現場で使えるプログラムを作っていくしかありません。35歳からはじめた私ができるようになりつつあるのですから、何事も遅いということはないと思うのです。

おすすめ
【プログラミング】何歳から始めてもできるのがPythonの魅力

Pythonというプログラミング言語は、Webサイト製作から機械学習までカバーする万能言語です。35歳からPythonを始めた私でも、業務に必要なデスクトップアプリを作れるまでになりました。 そんな敷 ...

続きを見る

タグ

カテゴリー

  • この記事を書いた人
アバター

from-age35

中小企業エンジニアです。35歳で急遽プログラミングを覚えることになり、PythonやJavaScriptなどをゆっくりマイペースに覚えています。先端スキルには疎いですが、楽しくコーディングしてます♪最近の興味は【WEB開発】です

-Python
-,

Copyright© 35からのプログラミング , 2019 All Rights Reserved Powered by AFFINGER5.