鳥なき里のマイコン屋(50) ARM Mbed その8、Mbed Simulator

マイコン向けの開発環境では、ホスト(大抵はパソコン)の上でオブジェクトをビルドした後、開発用のターゲットボードに刺した「エミュレータ」とか「プローブ」とか呼ばれるハードウエアの箱を通してターゲットボードにオブジェクトを「ダウンロード」して実行することが多いと思います。またエミュレータにはターゲットをデバッグするための支援機能が内蔵されており、これを呼び出して(多くはホスト上のデバッガが裏で操作しているのですが)デバッグを行います。最近の「お手軽」開発ボードでは、従来独立した箱だったエミュレータに相当する部分までボード上に搭載してしまい、直接パソコンにUSB接続してダウンロードもデバッグも行えるものが増えています。

しかし、多くの開発プロジェクトでは、ターゲットとなるハードウエアの開発と並行してそれを制御するソフトウエアも開発しないとスケジュール的に間に合わないことも多く、ソフトウエアに着手した時点ではまだターゲットボードが存在しない、という状況も多いと思います。そんな時に使われたりするのが「シミュレータ」です。多くのマイコン向け開発環境に、マイコンメーカなどが開発した「ソフトウエア・シミュレータ」が含まれており、ターゲットのハードウエア無に、ホスト上でマイコン用のオブジェクトプログラムを動作させ、テストできるようになっています。 “鳥なき里のマイコン屋(50) ARM Mbed その8、Mbed Simulator” の続きを読む

鳥なき里のマイコン屋(49) ARM Mbed その7、classの行方

開発ツールとしてのARM Mbedを調べてみるシリーズから「スピンオフ(フォークというべきか?)」する感じで、ターゲットボードにいろいろデバイスをつなげてみるシリーズを始めました。そのときに、真っ先に困ったのが、デバイスを繋げるための自分のコードを書くときに「どんなスタイルで書くのがいいの?」という点。組み込み用のマイコンのプログラミングというとCで書くのが「未だに」一般的じゃないかと思います。しかし、Mbedは基本C++で、結構カッコよくclassを使ってハードウエアの下の方を隠蔽している感じです。

“鳥なき里のマイコン屋(49) ARM Mbed その7、classの行方” の続きを読む

IoT何をいまさら(14) 工作1、LCDで表示、AQM1602XA

別シリーズでマイコンボードが使えるようになったので、実際にセンサを取り付け、また市販の無線モジュールなどを取り付け、「IoTの末端もどき」を作っていろいろ考察しようと考えました。そこで「工作」シリーズ開始なのですが、最初は、センサでも無線でもなく、マイコンボードに取り付ける表示から始めることにいたしました。センサの値を読み取ってデバッグ用に接続したパソコンの仮想端末に表示しても目的は達せるのですが、やはり「自立」感が欲しい。とりあえず文字が幾らか表示できればセンサもいろいろ饒舌に語るか、という期待をこめてであります。

“IoT何をいまさら(14) 工作1、LCDで表示、AQM1602XA” の続きを読む

Literature watch returns (3) 赤外線センサ講座完結、日経エレ、日経BP社

※『Literature Watch Returns (L.W.R.)』の投稿順 index はこちら

自分で試作してみるのか、部品を買ってくるのか。ソフトも作って、測定もやってみて、というところを一通りやってみれば、そのセンサの特徴、特にトラブルところとか、限界とか身に染みて体感。とりあえず、この後しばらく、ボケが入ってくるまでは忘れますまい。一方、誰かが使っているのを眺めたくらいの体験では、ふん、ふん、と話を聞いていても、何が勘所なのか、直ぐに忘れるどころか、最初から頭に入ってこない今日この頃です。といってお安いセンサであれば自分のおこずかいで実際に購入してみてちょっと遊んでみるくらいはできますが、お高い「計測器」的なものはそうはいきません。そんなお高い装置の中で前から気になっていたもの一つに「赤外線イメージセンサ」があります。最近でこそお手頃なものも出てきているみたいではありますが。

気になった直接の理由の一つとしては、「土木でエレキ」の方で時々赤外線イメージセンサの応用が出てくることでした。インフラの維持管理のためにコンクリート内部ダメージなどを、赤外線イメージセンサで測った温度分布のムラから検出したりするあれです。遠くからお高い赤外線カメラの展示物を見たことはありますが、自分じゃ使ったことありません。「ゲルマニウム・レンズ」高いんですよ、みたいな話を聞いても「何でゲルマニウム?」という感じ。とても良し悪しなど良く分からない。

“Literature watch returns (3) 赤外線センサ講座完結、日経エレ、日経BP社” の続きを読む

鳥なき里のマイコン屋(48) ARM Mbed その6、Make-GCC-ARMへイクスポート

Mbed-CLIをも少し使ってみるつもりでおりました。Mbed-CLIはOS5向けのようですが、OS2も可能という記述を見つけたので、「Mbed-CLI用」のOS2サンプルプロジェクトのimportをMbed-CLIから試みたのですが、途中で落ちてしまいました。どうせコマンドラインで作業するのであれば、Web環境から既にツールチェーンMake-GCC-ARM宛てでローカルディレクトリにイクスポート済のOS2のサンプルプロジェクトをビルドするのと大差なくね、ということで、そちらでビルドからgdbデバッグまでを通しでやってみました。実質の作業時間5分くらい。あまり簡単すぎて、本当に良いのだろうか、とも思いましたが、問題ありません。ちゃんと動いていますよ。

“鳥なき里のマイコン屋(48) ARM Mbed その6、Make-GCC-ARMへイクスポート” の続きを読む

鳥なき里のマイコン屋(47) ARM Mbed その5、OpenOCD+GDBでデバッグ

昨日、Mbed-CLI環境が立ち上がり(といっても大した作業はしていませんが)ローカル環境でビルドも成功しました。GCC_ARMのクロスツールチェーンの中を見やればgdbも入っています。これでデバッグできるかといえばさにあらず。WindowsやLinuxの上で自OSの上で動作するプログラムを作るセルフ開発であればgdbでセルフデバッグできますが、マイコン(ROM/RAM積んだマイクロコントローラ、MCU)のクロス開発環境ではそうは問屋が卸しません。リモートデバッグのための準備が必要です。

“鳥なき里のマイコン屋(47) ARM Mbed その5、OpenOCD+GDBでデバッグ” の続きを読む

鳥なき里のマイコン屋(46) ARM Mbed その4、Mbed-CLI

楽しく使わせていただいているArm Mbed環境ですが、そろそろCLI(コマンド・ライン・インタフェース)の開発環境についても触れないわけにはいきません。まず技術的な面からは、クラウドベースのMbed環境はソースコードからオブジェクトへのコンパイル(ビルド)はできるのですが、デバッガを使うことができないためです。もう一つはルール的な問題です。ソースコードをクラウド上に置いておくような開発の方法は、伝統的な会社の多くでは制限されているという点です。ソースコードの社外あるいは部門を越えた持ち出しについては、厳しく管理されている会社多いですものね。クラウドにソースを上げておくなどトンデモない、と。そんな場合にMbed-OS使えないのは世界を狭めてしまうので、クラウドにソースを置かず、ローカルで開発する手段が提供されています。

“鳥なき里のマイコン屋(46) ARM Mbed その4、Mbed-CLI” の続きを読む

土木でエレキ(14) 土石流の監視、有線?無線?

雲仙の「土石流被災家屋保存公園」行かれたことがあるでしょうか?雲仙普賢岳の噴火の後の大土石流で埋まってしまった家屋を保存してある公園です。普賢岳からはかなり離れていて、主要道路ぞい、海もそう遠くないような場所で、元は結構、人が住んでいた場所のようです。保存のため綺麗に整備され過ぎている感はありますが、「家がここまで埋まるんだ」と驚きました。法面や斜面の崩落も怖いですが、土石流も怖い。斜面崩落、地すべり、土石流、これらは監視対象としたら「親戚筋」かもしれません。

“土木でエレキ(14) 土石流の監視、有線?無線?” の続きを読む

介護の隙間から(36) 実証実験「サポート事業」

前回、最近の高齢者対象の実証実験のあれこれを調べていたところ、実証実験に対していくつかユニークな取り組みをしている自治体があることに気付きました。製品なりサービスなりの有用性を証明したい企業などの組織と、それを実証する「場」を繋ぐ取り組みと言っていいでしょう。自治体側としては地域の活性化が狙いであるようなので、必ずしも「高齢者や介護」ばかりが対象ではないのですが、調べてみると「高齢者、介護」関係の実証実験も含まれていることが分かりました。やはり課題分野であるので関心も高く、受け入れられる可能性が高いのではないかと思われます。実証実験の場が欲しい企業、組織によっては要検討項目でしょう。

“介護の隙間から(36) 実証実験「サポート事業」” の続きを読む

鳥なき里のマイコン屋(45) ARM Mbed その3、OS2種類、どっち?

昨日も書きましたが、Mbedという「開発環境」は、Mbed-OSという「実行環境」と不可分なようです。しかし、そのOSに2種類というか2バージョンあるのです。「彼ら」の呼び方で

OS 2 と OS 5

です。途中の3とか4はどこにあるの?とか、OS 2といわれると、その昔のIBM OS/2を思い出してしまうのですがね、とか閑話休題。そんな2種類あると言われると、どっち使ったらいいものか、まずは両方調べないとならないな、などと思うのです。ところが、Webベースの開発環境で、プログラムの新規作成を選ぶと、ひな形にするテンプレートを選んだ時点で勝手にどちらかに設定されています。特になんのお断りもなし。そんなOSのバージョン知らなくても無意識に使えてしまう?のがちょっと怖い。

“鳥なき里のマイコン屋(45) ARM Mbed その3、OS2種類、どっち?” の続きを読む

鳥なき里のマイコン屋(44) ARM Mbed その2, printf, OSのお陰

第42回で「開発時に使うけど実行時には使わないソフトウエアを主に」などと方針を述べたのですが、この Mbed というWebベース(クラウド)の開発環境については実行時に必要なソフトウエアを抜きに語ることはできません。

Mbed-OS

という ”RTOS” があること前提の開発環境だからです。また、ブラウザ画面の中で開発ができる、という便利さの反面、当然、制約事項もあります。しかし、そこも含めて結構良く考えられている環境ではないかと思います。

“鳥なき里のマイコン屋(44) ARM Mbed その2, printf, OSのお陰” の続きを読む

鳥なき里のマイコン屋(43) ARM Mbed その1、お手軽過ぎて?

第2部開発ツール編行きますと自分で書いたものの、「いや~面倒くさいね~」とちょっと手を付けかねていました。新規の(私が使ったことがない)開発ツールをやるとなると、ビルドして実機で動かすことくらいはやっておきたいです。すると開発ツールをインストールするだけでなく、ツールの使い方を調べ、片やターゲットのMCUを調べ、MCUを搭載したボードの回路など調べて、と準備が結構大変。サンプルプログラムくらいはどこかで公開されているにせよ、いわゆる「Lチカ」やるだけでも勉強しないとならない(読まなければならないドキュメント)ことが多すぎ、と思っていたら最近は全然そんなことは無い環境があるのでした。年寄りは目から鱗。

“鳥なき里のマイコン屋(43) ARM Mbed その1、お手軽過ぎて?” の続きを読む

土木でエレキ(13) 洗堀モニタリング

塩釜漁港の防波堤倒壊のニュースを見ましたか。昨年末に傾斜が見つかり、水中カメラで調査したところ、傾斜部分の海底がえぐれていて、防波堤を支えるくいが露出していた。8年前の津波が原因であろうということが書かれていました。津波で「洗堀」が起きたのだと想像します。そこで本日は洗堀モニタリングについてちょっと勉強してみたいと思います。まずはニュースの防波堤や、防潮堤、護岸などの洗堀、そして、メインはやはり橋脚でしょう。

“土木でエレキ(13) 洗堀モニタリング” の続きを読む

冥界のLSI(8)VM863C110、日本語ワープロとともに

1980年代、まさにバブルへと向かう日本には、日本独特の「OA機器」市場が存在していました。日本語ワードプロセッサーという「ハードウエア」です。若者はなんじゃそれ、の世界じゃないかと思いますが、当時の日本(当時の「イケイケ」状態は少し前までの中国を想像すると良いかと)ではかなり大きな存在感がありました。日本語ワードプロセッサー(以下ワープロと呼びます)のCPUは、初期こそ色々なアーキテクチャが使われましたが、後期になるとほぼx86系ばかりとなります。ワープロと共に生き、ワープロと一緒に滅亡したのが、もう一つの国産x86、VMT社のプロセッサでした。

(「黄昏のSoC」改題)

“冥界のLSI(8)VM863C110、日本語ワープロとともに” の続きを読む