カテゴリー別アーカイブ: 電子工作

Maker Faire Tokyo 2014に行ってきました

MFT2014_01

DIYの祭典、Maker Faire Tokyo 2014に行ってきました。
Maker Faire Tokyo 2014は11月23日~24日に、東京ビッグサイトで開催されています。
私は23日に行きましたが、とても盛況でした。
特に子供が多かったように思います。Makers・電子工作が一部のマニアだけでなく一般にも認知されていることを感じました。

面白い展示がとてもたくさんありましたが、その中でも特に気になったものを紹介します。

続きを読む


全方位カメラ(その2)

前回はUSBカメラにロジクールC905を使用しました。このカメラにはオートフォーカス機能が付いているのですが、Windowsではオートフォーカスが効きますが、Raspberry Pi(raspbian)ではオートフォーカス機能が効かずピントが合いませんでした。どうも、カメラからステンレス半球までの距離(約5cm)でピントが合わないといけないようです。反射率の高い鏡ならカメラから鏡までの距離と鏡から対象までの距離でピントが合えばよいようなのですが、ステンレス半球の反射率が低いせいかもしれないと想像しています。実はRaspberry Piの専用カメラでも試してみたのですが、固定フォーカス(焦点距離:1 m から無限遠)のため、やはりピントが合いませんでした。

今回、フォーカスを手動で調整できるELECOM UCAM-DLA200HBK (現時点:¥1,445)を購入して試してみました。

全方位カメラ

結果、WindowsだけでなくRaspberry Pi(raspbian)でもうまくピントが合いました!
画質などカメラとしての性能はロジクールC905の方が上ですが、Raspberry Piで動かしたいので、このカメラを使って画像認識などしてみたいと思います。





mbedでいろいろ試してみた

f:id:studio_k:20121002225231j:image:w320

mbed NXP LPC1768を入手したので、以下を試しました。

①LEDチカチカ

「Getting started」のサンプルにある、Lチカは特に問題なく動きました。

簡単!!

②PCとのシリアル通信

同じく「Getting started」のサンプルにある、PCとのシリアル通信も問題なく動きました。

数行で通信できます!!

③WiiリモコンとのBluetooth通信

BlueUSBというプログラムが公開されていて、そのまま動きました。

f:id:studio_k:20121003231354j:image:w200

感動!!

④PS3コントローラーとのBluetooth通信

PS3_BlueUSBというプログラムが公開されていて、少しの修正で動くはずですが、、、

動きませんでした。。。

コントローラの裏に書いてある”MODEL NO. CECHZC2J”の後ろに”A1″と付いている新しいタイプはうまくいかないとのことです。

僕のコントローラにはCECHZC2JEB1と書かれています。B1なのでさらに新しいタイプということですかね。。。英語版なのも関係あるでしょうか?

惜しいところまで行っているようなのですが。

f:id:studio_k:20121003231448j:image:w200

なお、③④はUSBのBluetoothドングルとして、PlanexのBT-MicroEDR1XとBT-Micro3E1Xを使用しました。


FM3マイコンでLチカ

販売されてからだいぶ経ってしまいましたが、インターフェース誌2012年6月号付属のFM3マイコン基板 (富士通製Cortex-M3コア搭載マイコン MB9BF618T)を試してみました。

f:id:studio_k:20120929225622j:image:w320

今回のFM3マイコン(MB9BF618T)のスペックはかなりの高スペックです。

動作クロック 144MHz
フラッシュROM 1MB
RAM 128KB

開発ツールにIARの評価版(32KB制限)を使用して、SysTickタイマを使用したLED点滅のサンプルは本に書かれている通りであっさり動きました。
しかし、フラッシュROMが1MBもあるのに32KBまでというのはつらいです。(30日間期間限定もありますが、現在の私のペースではほとんど動かさずに期限オーバーとなってしまうでしょう。)
MDK-ARMの評価版も32KBまでとのことです。

そこで、インターフェース誌2012年7月号で紹介されていた、GCC+Eclipseベースの開発ツール(Pizzafactory8 CQ版)を試してみました。
CQ版と言いつつそのまま動くようにはなっていないようでかなり苦労しましたが、ここなどを参考に、なんとかLED点滅サンプルが動きました。


Arduino倒立振子 リベンジ!!

3月~5月にArduinoを使った倒立振子に挑戦しましたが、なかなかうまくいかなかった上に、モーターやモータドライバを子供に回収されてバラバラにされてしまい、そのまま放置していましたが、こちらのサイト(からくり小箱:http://jr1wfhbbs.at.webry.info/)で同じジャイロセンサー(AE-GYRO-SMD)を使ってうまくいっているのを見て再挑戦してみました。

前回からの変更点はロータリーエンコーダを追加して、センサーはジャイロセンサーとロータリーエンコーダの2つとしています。
加速度センサーは子供の夏の自由工作のために取られたので、外しました。

ロータリーエンコーダの円盤部分はプラ板で自作してみました。解像度が低い上に回転方向が認識できませんが、なんとか使えるレベルにはなっています。フォトインタラプタには秋月で売っていたGP1A53HRJ00Fを使用しました。
f:id:studio_k:20100926195249j:image:w240:left
f:id:studio_k:20101023170408j:image:w240

調整を重ねた結果、ふらふらしながらもなんとか立つことができるようになりました。
f:id:studio_k:20101023170454j:image:w240

【改善のポイント】
①パスコンでモーターからのノイズの影響を抑えることで、ジャイロの精度が上がりました。
②ジャイロの値やロータリーエンコーダの値は移動平均を取り、平滑化しました。また、ジャイロのキャリブレーションの値も動作中に移動平均を取り、ドリフトの影響を抑えます。

動作の様子




SH-2Aマイコンボード

Interface誌2010年6月号の付録のSH-2Aボードを試してみました。

とりあえず、本に書いてある通りの手順でLEDピカピカまで動かしました。

初期状態では、デバッグ実行時に、止めてないのにAbortとなって止まってしまう現象がありましたが、モニタプログラム(SH-2Aマイコン基板実装SPIシリアル接続フラッシュROM)を2010年5月17日版にアップデートしたところ直ったようです。

f:id:studio_k:20100815173214j:image:w400

まだ、コネクタなど何もつけておらず、素のままです。

このSH-2Aはクロック:144MHzでRAM:1MBとのことで、過去の付録基盤でも最高レベルのスペックです。画像認識でも余裕でこなせそうです。OpenCVのようなライブラリがあると楽ですが。

SH-2AはフラッシュROMを内蔵しておらず、このボードではSPI接続の64KBのフラッシュROMを搭載しています。半分はモニタプログラムが入っているので、このモニタを使用する場合は使えるのは32KBまでとなります。足りなくなったら大容量のフラッシュROMに差し替えることもできるようです。

開発ツールは、とりあえずメーカー純正の開発ツールのHEWを使用する方向で考えています。使用期限は60日で、期限が切れるとコンパイル後のオブジェクトのサイズが256KBまでとなる制限があるようですが、当面はそこまでのサイズのプログラムは作らないと思うので問題はなさそうです。HEWの他にGCCが使用できるようですが、256KBの制限以外のメリット・デメリットが理解できていません。

モニタプログラムを使用すると少し面倒な設定がですが、JTAGなしでトレース実行できるのでかなり便利です。

次はROMに書き込んでPCなしで実行することを試してみたいと思います。

将来的には昨日のカメラロボのCPUをこのボードに換装することを考えています。ボードの作り替えは最小限ですませたいのですが、まだどうなるか分かりません。

あと、LEDピカピカはHelloWorldに相当するものだと思いますが、本文のサンプルは割り込みタイマーを使用した少し高度なものでしたので、割り込みを使わない簡単なバージョンを作ってみました。main()周辺に以下を記入します。

シリアル接続HEWモニタを使用する場合は本文のサンプルと同じく、↓の設定が必要です。詳しくは本文を参照してください。

  • resetprg.c のSR_Init を 0x000000F0から0x000000E0に変更
  • スタックポインタの設定
  • セクションの設定
  • デバッグの設定