2014年12月15日月曜日

Microviewと遊んでみた

つい魔が差したと言うか。。。
 Kickstarterで募集している Arduinoとソフトウェア互換のMicroViewのカワイさにあてられてついバックしてしまいました。
https://www.kickstarter.com/projects/1516846343/microview-chip-sized-arduino-with-built-in-oled-di

寄付をしたのは今年の3月ごろで、届いたのが7月頃
そして今の今まで塩漬け状態になってました。
ベーコンの如く塩漬けになってる間に不具合が見つかったらしく、MicroViewのチームからお詫びの手紙とともに、もう一台MicroViewが送られてきました。(さらに言えば10月頃の話)

で更に2ヶ月いい感じに熟成されていると思うので、ちょっといじってみました。

ココ↓を参考にしながらライブラリをArduinoStudioにインストール
http://learn.microview.io/intro/getting-started.html#install-arduino-ide


サンプルが用意されてるので、OLEDに丸を点滅させるプログラム選択して書き込み。

実行するとこんな感じ

うまく動いたので今日はこれで満足。

最近Amazonで売出し始めたみたいですね(2015/4/28追記)

2014年12月11日木曜日

Nucleo続報

Nucleoについての続報です。

現在、大学の時の仲間と片側3軸計6軸の双腕ロボットを作っているのですが、

Nucleoを使用して、そのコントローラーを作ることにしました。
ロータリーエンコーダは高価なので、可変抵抗を使用して各関節の角度を取得することにします。
レーザーカッターで部品を切り出して、関節に可変抵抗を埋め込みます。

出来上がったコントローラはこんな感じ

で、Nucleoなんですが、

買ったままの状態だとファームウェアにバグがあります!!
(これで2~3日ぐらい詰んでました)

AD変換を複数稼働させたところ、動作が停止してしまい
シリアルのコンソールを確認すると「peripheral not found」とか表示されてどうやら、エラーを吐いて初期化時に動作が停止している模様。
何度ドキュメントを確認しても、正しいピンに接続がされているので、どうにもマイコン側のバグとしか。。。このへんが価格が安い理由かな。。。。

で、公式サイトを確認すると下の方に"Firmware update required"とか書いてあります。
http://developer.mbed.org/platforms/ST-Nucleo-F401RE/

ST Link Driverというソフトをココ↓からDL&インストールして、
http://developer.mbed.org/teams/st/wiki/ST-Link-Driver


ここから最新のファームウェアをDLしてマイコンに書き込みするればOK
http://developer.mbed.org/teams/ST/wiki/Nucleo-Firmware


ファームウェアアップデート完了後プログラムを書き込んでみると、先程、書き込んでもウンともスンとも言わなかったのが何事もなかったかの用に動作しました。

何はともあれ、動作したから良いのですが、公式からファームウェアアップデートのお知らせは出てるので、こまめにチェックの必要がありそうです。

2014年11月28日金曜日

無料CADまとめ 2DCAD編


無料の2DCADの紹介もしときます。


SWを開発してるダッソー・システムズが無料で提供しているCAD
AutoCAD互換を標榜しており、コマンドベースで操作する所に加え、コマンドもAutoCADに酷似してます。
カスタマイズは可能なようですが、プラグイン開発のSDKは購入しないと使えないようです。
またフリーの利用も非商用に限るとかどこかに書いてあった気がするので、機能的にはビミョーですね。

自分は使い勝手がいいのですが、あまり一般受けしていないみたいです。
図枠の自動挿入機能がついていたりして、業務で使えそうです。
Delphiを使ってプラグインが開発できるので、カスタマイズ性も良好です。
がフリー版は1万要素までしか図面に追加出来ないので、曲線を多用している図面だとちょっと不安になりますね。

LibreCAD
一時期、話題になってましたが最近続報を聞かないですね。
使い勝手はなんとも言えない感じです。

jw_Cad
改めて紹介するまでもないぐらい有名

無料3DCADまとめ

今回は無料で使えるCADのレビューをしていきたいと思います。
あくまでかな~り私見・偏見が入ってますので、ご注意おば。
紹介するCADはこちら
  • FreeCAD
  • DesignsparkMechanical
  • OpenSCAD
FreeCAD

無料で使えるとあって名前もFreeCAD オープンソースで開発されており、
年に1~2回ぐらいはメジャーアップデートがあります。通常の3Dモデリングが可能なのは言わずもがな,3Dモデルから2D図面を生成したりする商用の3DCADにはよくある機能が使えます。
また、変わった所では産業用ロボットの動作シミュレーションが可能です。

エクスポートに対応している形式も幅広く、stl,step,obj,igs等です。
また、AutoCADのようにコンソールベースで図面編集も可能です。
コンソールで使う言語がpythonなのでちょっと慣れが必要だと思います。
pythonによるプラグイン開発も可能です。
GUIはQtを用いて開発されているため、自由度の高いGUI設計が可能です。


全体的に欲しい機能は揃っていて使い勝手も既存の3DCADと大きく異なることがないので、
個人的にはプッシュしたいところですが、まだまだアルファ版としての傾向が強く、現状ではアセンブル(別ファイルで作成した部品を組み合わせて一つのモデルを作ること)が出来ません。
開発者サイトには、アセンブル機能の開発を行っている旨が書かれているので、来年以降のアップデートで機能が乗ることを期待するしかなさそうです。 ver0.15でアッセンブルのプラグインが公開されました。Githubにてダウンロード可能です。リンク

(日本語のユーザー名が使用されていると、起動できないバグ?が有りました。ご使用の際にはアルファベットのユーザー名で実行してください。)


DesignsparkMechanical
RSコンポーネンツが提供していることで一時期有名になりました。
Spaceclaimというノンパラメトリックであることを推しているCADがベースです。(と言うか、開発もそこに丸投げっぽいですね)

通常3DCADのモデリングは線や面に幾何的な拘束を加えていって作図します。
使用感は通常のCADと変わりませんが、幾何拘束使ってゴリゴリやるタイプの書き方が出来ないので、SolidWorksとかAutoCADInventorとか使ってた人はちょっと戸惑うと思います。

STLへの吐き出しも可能なのでちょっとした3Dプリンタ用のモデルを作るのには持ってこいです。
アセンブルができると明言してはいますが、1つのファイル内で複数の立体を定義できるだけで、他のファイルの部品を取り込んで組合せとかは出来ません。



OpenSCAD
コードで3Dモデルをプログラムするという珍しい形式のCADです。
幾つかプリミティブな立体が与えられており、それらを論理演算することで所望の形状を得ます。
(いわゆる立体の論理和・差・積)

初期の状態だと、フィレット、チャンファーのコマンドが無いため、
機械設計的にはちょっと不便ですね。

まぁ、無いなら作ればいいだけなんですが、言語がちょっと理解しづらく、なれるのに時間がかかります。(現在まだ、慣れておりません)

番外編

学生だとAutodesk Inventorの最新版がstudent communityで使えます。
何十万もするようなソフトがタダで使えるので学生さんはぜひインストールしてみてください。



Nucleo

Nucleo

新しいマイコンボーを買ったので、そのレポートをば。(買ったのは今年の4月頃の話です。)
新しく買ってしまったのはこの子 Nucleo F401Re

(電車の窓に飾って写真撮影してみた。。。)

最大の特徴はなんといっても、その価格
1890円也
2000円切ってしまってるんです。

これだけ安いと機能が貧弱なんじゃないの~?
とか思ってしまいそうですが
ARMコアはCortex-M4 520MHz動作
IOピンは左右合わせて40本程,
ペリフェラルもADCからPWM,SPI,I2C,CANと一通り揃っています。
ADCの数も多いのでボリュームをたくさんつけて、ミキサーとか作っても面白そうですし、PWMモジュールのパワーにかこつけてサーボモーターたくさん繋いで、ロボット動作も行けそうです。

名古屋に出かけるついでなんばによってデジットさんで買って、電車の中で早速動作テストをしてみました。
mbedのサイトでプログラムを作成して、書き込み。
無事Lチカが出来ました。

2014年8月3日日曜日

お茶杓を3Dプリント

私は趣味で茶道をしています。

茶道では、お茶碗に始まって様々な道具を使います。

多分にミーハーなもので、「〇〇の釜が良い」とか「〇〇という茶碗が面白い」という話を聞けば、
その週末には展示されてる美術館に行ってしまうくらいには入れ込んでいます。
(もちろん資金と時間の許す限りですが。。。。)

そんなことをしているうちに最近では、見るだけではなく、自分で作ってみたいと思うようになりました。ただ、作ったとしても、披露する場所がないんじゃ面白く無いので、中々踏ん切りがつかず見送っていたのですが、

今年の7月にFabLab Kitakagayaでお茶を振る舞う機会を頂いたので、
「コレ3Dプリンタで出力してみたら面白いんじゃね?」などと日々思っていたモノを思い切って作ってみることにしました。

そんなわけで今回制作をしてみたのは「お茶杓」です。

お茶杓はお茶碗に抹茶を入れる際に使う匙なのですが、
お茶をやっている人でも、茶杓師さんのところへ習いに行って自分で作ったものお茶会等で使うといったことがあります。

なので、敷居は低いものと勝手に独り合点して作るのに挑戦してみることにしました。
(先生にバレたら怒られるかも。。。。とか思いながら)

まずは手持ちのお茶杓の寸法を計測して3Dデータを作ります。
使用したソフトはDesignspark Mechanicalです。
作ったデータはこんな感じ。



作成した3Dデータを持ってFablabKitakagayaで3Dプリントしてきました。

Maker Bot Replicator2は調整中との事だったので、

FabLabのメンバーの方が自作された3Dプリンタを使わせていただくことに。



白地のカッチョイイお茶杓が出来上がる予定だったのですが。。。


密度や温度の設定が適当だったせいか、スッカスカのお茶杓にorz

設定を見直し、フィラメントを取り替えてもらい、再挑戦!

出力中。。。


出力結果はこんな感じ。周りにラフトが付いているのでこれをヤスリを使って除去します。

※ラフト:プラモデルでいうところのランナーみたいなモノ。プリンタのステージから3Dプリントしたモノをはがしやすくするためにつける。




除去した結果はこんな感じです。左側に元に下お茶杓を並べてみました。
粗形状は再現できているので、満足な結果が得られました。


完成したお茶杓は↓のイベントの最終日にお茶席を設ける機会を頂いたので、そこで披露してきました。
https://atnd.org/events/52702


2014年4月5日土曜日

レーザー加工機テスト

今回はFabLab Kitakagayaのレーザー加工機を使用してきたレポートをします。

レーザー加工機というのは材料にレーザーをあてて、
その部分を溶融・蒸発させることで形を切り出す工作機械のことです。

Fablab Kitakagayaにあるレーザー加工機は出力が12Wと比較的小さい出力なので、加工できる材料がガラスやアクリル、木材などに限られます。それでも、複雑な形がものの数分で切り出せるのは非常に便利です。

仕事で何度か加工に出してますが、自分でレーザー加工機を使うのは初めてです。

今回は我が家の表札を作ってきました。
ほぼこの一年表札にボールペンで適当に書いた紙を使っていたので、ここらでちゃんとしたものが欲しいなーと思っていたので思い切って作って見ました。

CADを使ってデータを起こして

Fablab Kitakagayaに行ってレーザー加工機で出力してきました。
使い方は非常に簡単だったので1時間ぐらい練習すれば誰でもすぐに使いこなせる用になると思います。

レーザー加工機の使い方はFablab Kitakagayaの講習におまかせするとして
(作業中の画面キャプチャ取るの忘れてた。。。)

材料はホームセンターで安売りしてた3mmの板。
結果はこんな感じ

レーザーカッターの特性を活かす為に穴を抜きまくったり、カーブをつけたりして作って見ました。

出力とレーザーの照射速度を調整すると表面だけを焼いて彫刻をすることも可能です。
(出力中の写真とか、動画撮っとけばよかったorz)

が、安い材料だった上に細い部分が木目に沿っていたので1日掲で無残なことに。。。orz

なので、材料をアクリルに変えて、再度挑戦してきました。

今度はちょっとやそっと負荷がかかっても割れない程度には丈夫です。



加えて、レーザー加工機性能を調べる目的でテストピースを作ってみました。

まずは加工精度、50mm,49.5mm,48.5mm,48.25mmで加工を行いそれぞれの長さをノギスで計測しました。長さを計測すると、全体で0.3mm程マイナスに加工されています。本来なら数を加工して歩留まりを計測したいのですが、予算と時間がとんでもないことになるので、チキンな私はやれませんorz

レーザーの照射幅の関係でしょうか。
加工用のデータを作る際に0.3mm程プラスにオフセットするとはめあい部品なども加工出来そうです。はめあい関係はデータをきちんと取って自分でデザインしたmbedのケースとか作ってみたいですね。

下側は穴加工のサンプルです。
左から順にレーザー出力と移動速度の設定を

  1. スピード0.5パワー90
  2. スピード0.2パワー90
  3. スピード1パワー90
  4. スピード30パワー80

で加工しています。
3.がマニュアルに乗っていた設定なのですが、きちんと穴が抜けていませんでした。
2.での設定では加工はきちんと出来ていたのですが、板の表面が焦げていたので、やはり1の設定で加工するのがベストの用です。

次はレーザ彫刻のテストです。
パワーとスピードを変えながら、加工をしてみました。
spがスピードpowが出力です。
(一番下の部分は見えにくいですが、sp60pow10で加工してます)
こちらはマニュアルに載っていた設定の値sp60pow80が一番深く綺麗に加工出来ています。

加工幅の限界も実験しました。
0.6mm,1.3mm,2.5mm,5.0mm,10.0mmの幅で材料を加工し、どこまで薄く削ることができるかを試してみました。
材料は木材とアクリルの2種類です。

結果木材は0.6mmの幅まで加工が可能でしたが、アクリルの場合は加工をした部分が熱で溶けてしまい、きれいな形状が得られませんでした。
木材は0.6mm,アクリルなどの樹脂は1mm程度が加工の限界の様です。

最小Rなども計測したいのですが、テストのデータを作るのが結構たいへんなので、またの機会に。
ではでは。



Namba Coworking

今日は日本橋のコワーキングスペースNamba CoWorkingから更新してます。

デジットさんで部品買った帰りとかに気になってたのでいつか入ろうと思ってたのですが、
中々タイミングが合わなかったので、FabLab Kitakagayaからの帰りによってます。
店の中はこんな感じ。


いつもの工作セットを広げて遊んでます。

13:00か23:00まで 1日1000円で電源とWifiは使い放題!!
コーヒー飲み放題!!
しかもネスカフェバリスタが置いてある!!

プロジェクターとスクリーンもあるので、セミナーとかちょっとした教室なんかも開催可能だそうです。ここでそういったイベント開けたらいいな~とか思いますが、自分の集客力なんぞたかがしれてるので、ちょっと人脈を整えてからでしょうか。。。







2014年3月11日火曜日

Seeeduino arch触ってみた。

最近、某大学のロボット倶楽部の後輩向けに、マイコンの講座をやってます。

「ARMに触らせてあげたいなぁ」とか思ってたので、安価に入手できてmbedに対応している評価基板を探してました。

そこで見つけたのがSeeeduino Arch

青いやつだと6k,黄色いやつでも4kぐらいするとこを2,400円で売ってたので、これ幸いとばかりに衝動買いしました。


中身のマイコンは黄色い奴と同じですが、異なる点は3つ
  1. ピンの配置がarduino互換なので、arduino のシールドが使える
  2. 書き込み可能なプログラムの容量が32kB
  3. デバッガが使用可能なこと
1.に関してはarduino互換とはいえ流石にプログラムは使えません。残念ではありますが。
2に関しては正直もうちょっと容量増やして欲しい感じもします。既存のライブラリをじゃんじゃん入れない限りは問題なく運用できるのでちょっとしたロボット作るには向いているのじゃないでしょうか。
3はまだ試してません。一応ここにやり方は書いてあるんですが、Keil uVistion4を入れて環境の構築しなきゃいけないのが、面倒でやってません。


最近はmbed対応の基板がSTMから4種類出たりFreeScalekからも2種類出てますね。

日本ではmbedはあんまり人気がないみたいですが、開発者コミュニティがしっかりしててライブラリがきちんと揃ってるので、自作のガジェット作って見たい人にはオススメしたいですね。

2014年1月29日水曜日

我が家の家電コントロール機器

最近、ネットワーク経由で操作できる学習赤外線リモコンが熱い(自分の中で。。。)
arduinoベースで製品化されたり、
http://getirkit.com/

現役大学生のスタートアップなんかでも作ってる。
http://engineer.typemag.jp/article/pluto-neo

エアコンを職場からいじったりできるようになると、会社から帰る前に部屋のエアコンを入れておいて、帰るころには部屋が暖かい/涼しいみたいなことがみたいなことができる用になるし。

タイマー設定しておいて時間になったら電気つけるみたいなのも面白いと思う。

「タイマーつけとけばいいじゃん」ってのはそうなんだけど、残業や休日に出かけていて、帰りがいつもより遅かったりすると、その分の電気代が無駄になるし。


まあ、何より「赤外線リモコン作ってみてぇ!」って気持ちが止められないw。


今回の制作もマイコンはmbedを使って作ります。
mbedの赤外線リモコンのライブラリを公開してくれている方がいるので、そのライブラリを使わせてもらいます。また、ネットワーク機器を簡単に作れるように、標準でRPC(りもーとぷろしじゃーこーる)のライブラリが用意されてるのでそれも使います。

大分前にブレッドボード上で完成してテストも完了してたんだけど、
中々基板を作る気になれなくて(気力削がれる半田付けの量でもないのに)、何ヶ月もほったらかしになってました。
材料はほぼ揃えていたので、年も明けてキリの良い所で一気に作ってしまいました。


材料

  • mbed1768 (いつもの頼れる相棒)
  • 角型単列20ピンのソケット
  • トランジスタ 2SC1815 (もうディスコンしてますけど。。。)
  • 赤外線LED (型式不明)
  • mbed イーサネット接続キット
  • みんな大好きユニバーサル基板


以下は回路図。(ホントはLED保護用の抵抗とかノイズ除去用のコンデンサとかいれないとヤバイんだけど。。。まぁとりあえずはこれで。赤外線LEDもそんなに高いものではないので。。)
作成はfritzingを使いました。
fritzingいいですよ。ライブラリが豊富で、ブレッドボードビューで部品の配置と配線したら、プリント基板のデータまでオートルートで作ってくれるのですごく楽ちんです。こいつの運用が軌道に乗ったら、P板辺りで発注してつくろうと思います。

同じような機能を持ったWebサービスで123D Circuitがありますが、mbedが部品として標準で登録されてないので、回路図作るのに一苦労あります。あと、タブレットに対応しているせいか、何もないところでドラッグすると勝手に画面が拡大されるような動作をするので、自分はストレス溜まりまくりでした。

閑話休題

後はちょいちょいと半田付けするだけ。
出来たのはこんな感じ(下の方に飛び出ているワイヤはテスト用です。ベッ別に配線間違えたワケじゃないんだからね!!)

ハードウェアはこれで一応完成。

後は、プログラム

使用したライブラリ
RemoteIR(http://mbed.org/users/shintamainjp/code/RemoteIR/)
@shintamainjpさんが公開されてるライブラリです。

CookBookから
mbed RPC
(http://mbed.org/cookbook/Interfacing-Using-RPC)

mbedをjavascriptからコントロールするためのライブラリ
(http://mbed.org/cookbook/Interfacing-with-JavaScript)

RPCのデーモン的なプログラムをmbed上で走らせて、
Htmlに記述したjavascriptからmbedのプログラム中で登録した関数をRPCでコールしています。

今のプログラムは人に見せると恥ずかしいレベルなので、コメント入れたりして綺麗に書きなおしてから公開します。


5,6年前までこんなことしようと思えば、TCP/IPのライブラリから自分で作らなくてはならないなんてことがザラだったのに。既存のライブラリの組み合わせだけで、web+組込みみたいなアプリケーションのがすぐに出来るようになるなんていい時代になりました。

こんな感じのアプリケーションは、アイディアがまとまったらまたつくろうと思います。


参考にしたところ

http://mbed.org/users/yueee_yt/notebook/use_ethernet/