Raspberry PIの性能が向上し、様々なタスクを捌くことができるようになった。昨年RaspBerry PI 5が登場し、まさにデュアルデイスプレイLinuxPCとして活用できるほどに良いスペックになっている。RTCが内臓され、時刻を保持できる機能は、産業系などネットと無関係な環境での使い勝手もよくなる
一方、この数年で性能が向上したMiniPCが様々なメーカーから発売され、選択肢が広がった。私は、長年IntelNUCを使ってきたが、Intelがこの分野から撤退した。その一方で高い耐久性を求められる産業組み込み系分野から、高性能なグラフィクス性能を備えるゲーム用デスクトップ系まで、実に様々なMiniPCが登場している
MiniPCのほとんどはWindowsOSを搭載。通販で簡単に購入可能だ。RAMの容量を増やしたり、SSDを増設できるものもある。選択の自由度はRaspberry PIの比ではない。WinowsOSが動くPCは、そのOSをLinuxOSに変えることができ、Linux化したMiniPCはRaspberry PIのGPIOを利用したタスク以外のことができる。MiniPCにGPIOが必要であればArduinoのGPIOと組み合わせれば良い
私のArduino開発環境は、Windows 11とLinux/Ubuntu 22.04 LTSの両方を使い、Arduino IDEだ。Linux開発環境は、実装環境とほぼ相似なので好都合だ。Aduinoのプログラムと、Linux側のプログラムの並行開発ができる上に、データをCSV形式でLinuxに取り込んでしまえば、Linux上の様々な開発ツールを使って、自由自在に処理ができ、伝送もLinux環境を使えば簡単だ
私もRaspberry PIは大好きだ。長年その上で動くアプリケーションも開発してきた。でも、MiniPC+LinuxOS+Arduino/XIAO開発の自由度を知ったことで、Raspberry PIであることの重要性は薄れ、アプリケーションもMiniPC上で動かしている。MiniPC/Ubuntu/Debian上のアプリケーションは、Raspberry PI OS(Debian派生、旧名称Raspbian。)でも動く。CPU部分はアプリケーションに合わせ適材適所で選べばよい。必要ならサーバーやクラウドも選ぶことができる。Raspberry PIはその一台に完結する必要がある時のみ使うようになった
Arduino側も多様化している。ピンの位置を含めたインターフェイス互換ボードに加え、物理的なピン配置やCPUコアを再設計したSeeed Studio XIAOなど、新しい試みが広がっている。XIAOでは、センサーとの接続にGroveを使うことが前提なので、電気回路の知識無しでセンサーを活用することができる。
さらに高性能なマイコン基板には、組み込み用のPython、GO言語も移植されており、開発言語も広がりを見せ始めている。Arduino UNOも最新版は、物理的なピン配置こそ同じだがCPUは高性能化しており、再設計されている
MiniPCもArduinoも高性能化はさらに続く。オープンソースCPU設計のRISC-Vベースのマイコンも入手可能になった。開発の考え方も再設計が必要だ。いささか古典的に見えるが、プロトタイプから実装までLinuxホストにUSBシリアル接続のArduinoを組み合わせることが「今のRAD」開発環境だろう
いつもアクセスありがとうございます。Arduino開発と実装環境の再設計についての考えを共有します。