AIの片隅で(6)ラズパイでChainer、続々編

一昨日は、非力なRaspberry Pi 1 Model B+で『AI業界のHello World!』ことMNISTのEpoch 1を実行するのに一晩かかったわけであります。そして、新規導入の

Raspberry Pi 3 Model B+

(そのうち Pi 4 も欲しいのですがね)を取り出し、Raspbianをセットアップした暁には、早速にChainerインストールしてMNISTの学習をやらせてみると誓ったのでした。やってみました。結論から言えば、昨晩走らせたものが今朝には完了していました。やっぱり、Pi 3速い。Pi 1の20倍くらい速い(といって、まだGPUレスのパソコンの方がPi 3の50倍くらい速いのですが)。 “AIの片隅で(6)ラズパイでChainer、続々編” の続きを読む

AIの片隅で(5)ラズパイでChainer、続

「学習」はラズパイ、ましてや非力なRaspberry Pi 1 B+にやらせる仕事ではないことは重々承知の上、パソコンとの比較例としてやってみた『AI業界のHello World!』MNISTへの挑戦です。前回は、パソコンからリモートログインしていたSSH接続が切れてしまい、「折角かなり走っていた」筈のラズパイ上のプロセスが死んでしまい、結果(EPOCH1の学習時間の測定でしかないのですが)に行きつきませんでした。そこで、screenコマンドでパソコン側が落ちてもラズパイ側でプロセスが維持できるようにし、再度、実行を仕掛けたのでありました。今日みれば、ようやく結果が出てました。それがこちら。 “AIの片隅で(5)ラズパイでChainer、続” の続きを読む

AIの片隅で(4)ラズパイとWSLの上にChainer

「ラズパイでAI」の本を3冊ほど読んだので、早速、実践あるのみかと。ま、「読んだ」といっても、つらつら「眺めた」程度であります。ホントのところ、自分で計算(実際に働くのはマシンですが)してみないと記憶にも残りませぬ。実を言えば、手元には Raspberry Pi 3 Model B+ も届いているのです。しかし、長年使った(埃を被っていた時間も長い)

Raspberry Pi 1 Model B+

でどこまでやれるのか(どの辺を超えると酷いことになるのか)調べておきたいと思いました。低価格、小スペースで人気の Raspberry Pi zero と同じCPUでもあるし。。。無理やりは承知で、まずは非力なArm11機で、どこまで行けるかやってみました。

“AIの片隅で(4)ラズパイとWSLの上にChainer” の続きを読む

Literature Watch Returns(7) ラズパイでAI、目白押し

Raspberry Pi、日本式に略せば「ラズパイ」、の関連書籍が各社から多種刊行されていることは皆さんご存知かと思います。日に日に縮小している感のある書店の理工系書籍の棚の中、さらに縮小傾向の著しく感じられる電子工学系統の中にあってかなり存在感のある「分野」であると言えるでしょう。手をつけている出版社も多く、「ラズパイ」メインの月刊誌も成立しています。もともとホビーや教育用で始まったRaspberry Piですが、いまでは産業応用も広がり、数年前で毎年数百万台、今では一千万超えているのではないかと想像される出荷台数の半分くらいが産業用途らしいです。関連書籍が多い中、「多少絞り込む」つもりで、

Raspberry PiのAI応用関連

で調べてみましたら、まだまだ大量でとても全部はカバーしきれません。今回はその中から3冊だけ購入させてもらって読んでみました。事態は思った以上に進行している? “Literature Watch Returns(7) ラズパイでAI、目白押し” の続きを読む

鳥なき里のマイコン屋(69) ArduinoIDE活用、M5Stack

前回はArduino互換のピン配置が、いまじゃ「お手軽マイコン開発業界」(そういう業界があるのか?)じゃデファクトだ、みたいなことを書きました。一方、ArduinoのIDEも結構な人気です。IDE業界のデファクトと言えば、やはりEclipseじゃないかと思うのですが、シンプルで単なるエディタ?にも見えなくもないArduinoIDE、結構来てます。多品種のArduinoをサポートするための仕組みが有効活用されたのか、Arduinoでない開発ボードにもぐいぐい広がっている感じ。今回は、そんなArduino IDEの活用事例として、これまた最近来ている感じの M5Stack を見てみたいと思います。
“鳥なき里のマイコン屋(69) ArduinoIDE活用、M5Stack” の続きを読む

モダンOSのお砂場(5) Micro:bitとDroidScriptその3

micro:bit上のEspruinoをDroidScriptから操作して楽できるかと思ったのですが、そうもいかなかった前回でした。そこで方針転換、micro:bit上で動作するBLEから制御できるアプリを作り、それをスマホから制御するという方式に落ち着きました。当然、スマホ側のアプリを作るのにDroidScriptを使用するつもりではいるのです。BLEから制御するのは、無難なところで、BLE上のシリアル接続で、コマンドを送り、データを受信という方式でまずは行うことといたしました。とりあえず何かい、BLE上のシリアル端末あればテストできるんじゃ。。。 “モダンOSのお砂場(5) Micro:bitとDroidScriptその3” の続きを読む

モダンOSのお砂場(4) Micro:bitとDroidScript その2

前回、何の苦労もなく、Android機上のDroidScriptから、BLE経由で、microbitを操作できたのは僥倖であったことが、今回理解できました。「たまたま」うごく「組み合わせ」であった、ということです。結局、どこにでも転がっているように思える、ソフトウエアのバージョンの問題に遭遇してしまいました。いろいろ調べてみて、どの組み合わせならどう動かすべきなのか少し分かってきたので、中間報告を兼ねて書き留めておきます。問題を認識した切っ掛けはハードを拡張するためのブレークアウトボードの作成でした。 “モダンOSのお砂場(4) Micro:bitとDroidScript その2” の続きを読む

モダンOSのお砂場(3) Micro:bit と DroidScript その1

前回は、micro:bitの箱の外側を撫でた程度で止まっておりましたが、今回からは実際に使ってみたいと思います。しかし、本流(王道?)の MakeCodeエディタ も Pythonエディタ も「とりあえず」使いませぬ。スマホベースで使ってみよう(当然BLE無線経由で)と思うのですが、micro:bitのスマホ上開発定番の micro:bit コンパニオンアプリ も使いませぬ。使うのは

DroidScript

であります。私はスマホにインストールしていたものの、「眠らせて」おりました。今回、micro:bitを触るにあたって復活となった次第。 “モダンOSのお砂場(3) Micro:bit と DroidScript その1” の続きを読む

鳥なき里のマイコン屋(67) Mbed Studio、ちょっと使ってみた

Mbed Studio IconMbedのプログラムをデバッグするのに、最初、Mbed-CLIをインストールし、しかし、CLIに根気が(記憶力が)続かず。次にSW4STM32に手をだし、普通にEclipseのGUIからデバッグ出来て目出度し、となりました。でも、Mbedご本家にもデバッグ可能でローカルなGUI開発環境

Mbed Studio

があるではありませんか。ただし、まだベータ版。公式なリリースになれば整うのかもしれませんが、現時点では私の希望が皆通るわけではございませんです。

“鳥なき里のマイコン屋(67) Mbed Studio、ちょっと使ってみた” の続きを読む

IoT何をいまさら(30) トホホな失敗の詳細

前回のサーミスタの電源ON/OFF制御の失敗の件、「速報」を投稿させてもらったのですが、時間がなかったので詳細については書いてませんでした。その後、追加で測定をして、

現象についての理解

は出来たので今回それを書かせていただきます。どうもその上でPSoC 5LP Prototyping Kit, CY8CKIT-059と搭載のPSoC 5LPをもっと調べないとならない雲行きではあるのですが。

“IoT何をいまさら(30) トホホな失敗の詳細” の続きを読む

IoT何をいまさら(29)トホホな訂正

気付いてしまったんです。失敗。前回、サーミスタの電源ON/OFFをやるのに、外からオシロで見た波形だけでタイミング決めてました。

失敗です。後で計測値みたら全然ダメになってました。

慌てて、どのくらい前からVDACをONにして置いたらちゃんと計測できるのか、調べてみました。測定開始の大体25msくらい前にはONにしておかないと影響が出るようでした。

余裕をもって(これまたエイヤですが)40msほど前にONにするように変更しました。大分デューティは大きくなってしまいましたが、致し方ない。測定値が狂ったのでは本末転倒。しかし、トホホな失敗。オシロばかり見ていて、測定値を確認していなかった!

ダメ絶対。

IoT何をいまさら(28) サーミスタで温度を測る その3 へ戻る

IoT何をいまさら(30) トホホな失敗の詳細 へ進む

鳥なき里のマイコン屋(66) SW4STM32、デバッガを使ってみる

何でまたMbedのWeb環境があるのに、SW4STM32のローカル開発環境をわざわざインストールして、Mbedからコードをイクスポートしたかと言えば、それは

デバッガ

を使いたかったから、という一点につきます。以前、同様な理由からMbedのCLI環境をインストールしてデバッガ動かしてみましたが、正直、

CLIのコマンドを覚える記憶力が失われている気がする

ので辛い。GUIでブレークポイント張って、変数の内容くらい確かめられたらとてもハッピー。ただそれだけでございます。

“鳥なき里のマイコン屋(66) SW4STM32、デバッガを使ってみる” の続きを読む

IoT何をいまさら(28) サーミスタで温度を測る その3

『訂正』本文中のタイミング間違っています。こちらをご参照ください。

サーミスタもそろそろおしまいにして、そこからCDSのお勉強へ進もうと思いつつ、1点引っかかっていたのがサーミスタへの電流供給のOn/Off制御です。センサはOnにしておくと常時電流が流れるものが多く、使わないときにセンサへの電流の供給を止めておく、というのは、電池で駆動されるような装置では必須のことだと思います。過去見た装置の中には、

センサのデータシートの規定よりもOn時間を削り込んでいる

ような装置もありました。削り込める量は、装置を作っている側が(リスクを負って)測定して決めているのだと思いますが、電池寿命を延ばすための努力の一環でしょう。

“IoT何をいまさら(28) サーミスタで温度を測る その3” の続きを読む

鳥なき里のマイコン屋(65) SW4STM32、MbedからExportしてみる

MbedのWeb開発環境で、Nucleo用にプログラムを書いていて、気になっていたものがあるのです。Exportメニューの最初に現れてくる

SW4STM32

というツールです。そんなメニューの先頭に出てくるくらいだから、きっとMbedからの移行は簡単なのに違いない。ローカルな環境だから、GUIからデバッガ使えてきっと嬉しい。などと考えて、ちょっと触ってみることにいたしました。 “鳥なき里のマイコン屋(65) SW4STM32、MbedからExportしてみる” の続きを読む