ラベル 基板作成 の投稿を表示しています。 すべての投稿を表示
ラベル 基板作成 の投稿を表示しています。 すべての投稿を表示

2016年4月1日金曜日

RP-5基板の組み立て

KiCadで設計してElecrowに注文していた基板も上がってきて、部品も揃ったので組み立ててみました。

ちなみに今回はFedExにしてみました。

3/15火曜日の夜 出図
3/16水曜日 製造開始
3/22火曜日 写真付きで基板できたよとの連絡
3/23水曜日
17:32 出荷地のFedEx営業所を出発  YUEN LONG HK
21:50 FedEx経由地に到着         GUANGZHOU CN
3/24木曜日
03:13 FedEx経由地を出発         GUANGZHOU CN
05:06 輸送中/処理中                          GUANGZHOU CN
07:32 仕向国仕分け場所                    NARITA-SHI JP
11:57 輸送中/処理中                          TOKYO-KOTO-KU JP
14:14 国際輸送許可 - 輸入                 TOKYO-KOTO-KU JP
20:16 輸送中/処理中                          TOKYO-KOTO-KU JP
3/25金曜日
10:02 FedEx 営業所                          TOKYO JP
13:24 配達完了

製造開始から土日を挟んで9日間で到着しています。

今回はTAKACHIのケースに合わせて基板を設計しました。
当然ながらピッタリと収まっています。


レーザーカッターで1.5mm乳白色半透明のアクリル板を切り出して赤外線LEDと受光部の窓を作っています。

後ろ側も同じ板で電源とUSB、Etherの口をRaspberryPi 2 Model-Bの穴位置に合わせて加工しています。
本当は段差が無いようにできればいいのですが、素人の加工としてはこのくらいが限度でしょうか。

2016年3月24日木曜日

HomeServerのinstall

GitHubにRaspberryPi 2 Model Bを使ったSiri対応の学習リモコンのコードを公開しました。
RaspberryPi Model A+/B+でも動くと思います。RaspberryPi 3に関しては確認できたら報告します。

■このソフトで現時点で出来ること
 ・赤外線リモコン、HA端子(JEM-A端子)、弱電スイッチなどの制御
 ・赤外線リモコン信号、HA端子、弱電スイッチ、各種センサーなどのステータス情報取得

 - telnet(socket)経由での上記制御と情報取得(human-readble IF, JSON IF)
 - HomeKit対応アプリからの上記制御と情報取得(HAP-nodeJS経由)
   AppleTV(3rd generation以降)を経由して外出先からの上記制御と情報取得
   iPhoneのsiriによる上記制御と情報取得
   ※ ただしAppleがHomeKitの認証を強化すると動かなくなる可能性あり
 - javascript(node.js)での制御
   センサー等の変化や30sec intervalのイベントでjavascriptの関数が呼び出されるので条件を設定して制御することが可能
     日没にあわせてシャッターを閉める、あかりをつける
     玄関のロックが5分間開いていたらメールする
     雨が降ってきたら窓を閉める
     室温に応じて起床前にエアコンをつける
     窓を開けたらエアコン停止
     etc

■今後追加していきたい機能(余裕があれば)
 - リモコンの学習、各種設定のWebUI化
 - javascriptでの制御部分のVisualPrograming化

■下のブレッドボード用回路の機能
 - 赤外線リモコン送信・受信

■RP-5基板の機能
 - 赤外線リモコン送信・受信
 - ZigBee(XBee)経由でのリモート子機(HA-5)制御
 - HA-5子機の故障診断とファームウェアアップデート、ペアリング

■HA-5基板の機能
 - 赤外線リモコン送信・受信
 - HA端子(JEM-A端子)での家電制御、ステータス確認
 - 弱電(24V以下)のスイッチ制御・ステータス確認(電動シャッターなどのスイッチ)
 - 各種センサー情報の取得(温度、湿度、雨、人感、etc)


ブレッドボード用回路は以下のとおりです。





リモコン学習時のブザー音とリモコン発光時の発光音が不要なら真ん中のブザー音出力ブロックは不要です。

LED101/102はリモコン用の940nmあたりの波長の赤外線LEDなら大体動くと思います。
ちゃんと赤外線LEDが発光しているかどうかはデジカメ等で見ながら発光させると確認できます。
ただし、iPhoneはカメラに赤外線フィルターが入っているようで見えませんでした。

赤外線受光モジュールは電源が逆になっているデバイスもあるので他のものを使う場合は気をつけて下さい。

FETもNchで耐圧がOKなら動くかと思います。こちらもピン配置を確認して使って下さい。

installの大まかな手順を書いておきます。
詳細手順はこちらのREADME.mdを御覧ください。(下の方です)
※scriptからダウンロードするので、gitをcloneする必要はありません。

1.最新版のRASPBIAN JESSIE LITEをダウンロードしてSDカードに書き込みます。
2.SDカードをRaspberryPiにセットしてNetworkを接続し起動後loginします。
3.setup scriptを実行する
 > curl -O https://raw.githubusercontent.com/mnakada/ha1control/master/setup.sh
 > sudo bash setup.sh
4.piのアカウントpasswordを変更する
5.reboot
6.HomeKit対応アプリをiPhoneにinstall
7.対応アプリでHA1HomeServerを登録

国内のエアコン等も大抵のものは動くかと思います。
Daikin/Panasonic/三菱重工は確認しました。

AppleTVの第3世代以降があってiCloudの設定をしてあれば外出先からもアクセス出来ます。
ただし、AppleTVの自動updateをonにしているとupdate後自動起動してくれるのですが、iCloudのloginを一度解除してからもう一度loginし直さないとアクセスできなくなってしまいます。

2016年3月19日土曜日

RP-5基板

最近XBeeの新型のS2Cが出たり、ATmega328も昨年からATmega328pbが出ていてRaspberryPi3も出るし、Kicadも最新版をbuildしたので、回路を見なおして基板を起こし直すことにしました。
これまで親機の方はアクリル板をレーザーカッターで切り抜いてケースを作っていましたが、曲げ加工とか手間がかかるのでTAKACHIのPF-15-3-10Wを使ってみることにしました。
赤外線を通す必要があるので、このケースの前後のパネル部分の代わりに乳白色の半透明アクリル板をレーザーカッターで加工して使ってみます。
赤外線LEDや受光部、RaspberryPiの各種コネクタの位置をパネルの範囲に入るように配置しながら高さ方向の適当な位置を考えていきます。
下の図の赤い線で書かれているのがRP-5基板とRaspberryPiの位置になります。


最初は基板固定用のM2.3用ボスで基板を固定することを考えたのですが、この高さで固定するとRaspberryPiのコネクタがパネルの高さ内に収まらないため3mm程度スペーサーで嵩上げする必要があります。
そこで、ケースの固定用の支柱部分に基板をいれて上側に適当なクッションを入れることでちょうどいい高さに収まらないかと考えています。

基板の回路はこれまでとほとんど変わってませんが、RaspberryPiと接続してIRリモコンの学習用の受光部と発光部、子機との通信用のXBeeと将来置き換えていけるようにESP8266用の回路を入れています。


RaspberryPiと接続して使う場合は下の回路だけ部品をのせることで親機としての機能になります。


Bee経由で子機として使う場合はATmega328pbでリモコン機能を中継する形になります。
回路はシンプルで電源とマイコン、XBee、赤外線受発光部だけになります。



この回路を丁度ケースに入るような形で設計したのが下の基板です。



それほど面積は要らないのですが、ケースに固定する部分の関係で10x15cmに入る位の大きさになってしまいました。
もう1つのFriskサイズの子機基板と一緒にElecrowに発注しました。
今月末くらいに届く予定です。

もう1枚の基板については次回書きます。


2016年1月15日金曜日

バーチカルブラインドの電動化その後

以前電動化したバーチカルブラインドですが、やはりちょっとモーターの出力に対して負荷が重いようで、たまにきちんと閉まらなかったりしてました。

現在使っているモーターはSWITCHSCHIENCEさんで売っているPololuの75:1ギアドモーターなのですがギア比をもう少し高くして低速化することでトルクを確保しようかと検討してみました。

たまたま立ち寄った千石電商でダイセン電子工業の132:1ギアドモーターが置いてあったのですが3.3V品でパワーがあまり出なさそう。
しかもPololuのモーターでエンコーダーを取り付けている後ろ側のシャフトが出ていません。
ただ、ギア部分の寸法が同じなのでうまく組み替えてPololuのモーターを132:1に出来るかもしれないと買ってみました。

ギアボックス部のネジ2本をはずして取り外して見てみたところ軸に付いているギアの歯数が違うので圧入されているギアも一度外して組み替える必要がありました。




なんとか外して組み替えてPololuのモーターに132:1のギアボックスを組み合わせ、取り付けてみました。



これを組み付けて







取り付けます。

ちゃんと速度が半分くらいになって多少の負荷でもきちんと開閉出来るようになりました。





2015年12月11日金曜日

KiCad 4.0.1 (bzr6195)

KiCadが立て続けに更新されてます。

KiCad 4.0.1をbuildしたイメージをここにおいておきます。

標準のbuildとは下記の点が異なっています。
- TrackPad/MagicMouseの動作をMacの標準的な動作に変更しています
- Library/Application Support/kicad/internat/ja/のリソースを読むように修正しています
- fontが日本語対応になっています
変更分のpatchはこれです。

イメージをダウンロードして開くとkicadアプリケーションとkicadディレクトリがあります。
kicad.appは/Applications
kicadは/Library/Application\ Support
にそれぞれコピーします。(finderで開いた時の矢印のとおりにDrag&Dropして下さい)

最初の1回めは開発元が未確認のため開けませんと言われてしまうので、/Applicationフォルダを開いてKiCadを右クリックし「開く」を選択して、ダイアログボックスの「開く」を選択すると起動します。

詳細とbuildの手順はRC2.0の時に書いたのでこちらを参照して下さい。

2015年12月8日火曜日

KiCad4.0.0 (bzr6194)

KiCad4.0 stable releaseが出ました。
buildしたのでイメージをここに置いておきます。


標準のbuildとは下記の点が異なっています。
- TrackPad/MagicMouseの動作をMacの標準的な動作に変更しています
- Library/Application Support/kicad/internat/ja/のリソースを読むように修正しています
- fontが日本語対応になっています

イメージをダウンロードして開くとkicadアプリケーションとkicadディレクトリがあります。
kicad.appは/Applications
kicadは/Library/Application\ Support
にそれぞれコピーします。(finderで開いた時の矢印のとおりにDrag&Dropして下さい)

最初の1回めは開発元が未確認のため開けませんと言われてしまうので、/Applicationフォルダを開いてKiCadを右クリックし「開く」を選択して、ダイアログボックスの「開く」を選択すると起動します。

詳細とbuildの手順はRC2.0の時に書いたのでこちらを参照して下さい。

一つだけ、buildするのに引っかかった点を書いておきます。
brewでboostをいれているとpcbnewを起動した時にExceptionで落ちてしまうようです。
自分でbuildする場合はbuildする前にbrew uninstall boostでuninstallしておいて下さい。

2015年11月27日金曜日

スマートロック

ちょっと頼まれて普通の鍵の玄関を電気錠化して遠隔制御を出来るようにしてみました。
自宅は建てた時から電気錠だったのでHA端子接続で簡単につなげられていたため、これまで普通の鍵を置き換える検討をしてませんでした。

今回鍵の電気錠化の部分は㈱ユーシン・ショウワのリ・ボーンIIを使います。




最初はAkerunとかQrioSmartLockとかも検討したのですが、どちらもBluetooth接続で暗号化されているのと鍵という性質上セキュリティが厳しくHack出来ないと考え別のものを探してみました。
リ・ボーンIIは玄関のサムターン部分を外して代わりにつけるタイプで、AkerunやQrioSmartLockと比べて面倒ですが、リモコンキーで制御なのでリモコンキーのボタンを制御できればどうとでもなるはずと考えて、とりあえず入手して検討します。

蓋をあけるとDIP-SWがあります。
今回はAutoLockはこちらで制御するので単純にopen/closeのリモコンでの制御通りに動くモードに設定します。




まず、リモコンキーをバラして確認していきます。



CR2032電池なので公証3Vですが回路は電池の初期電圧とかも当然対応しているので3.3Vでも大丈夫でしょう。



open/closeのpush-swがあって、片方の端子がGNDにつながっています。もう片方がpull-upされているようで、sw-offで3V,sw-onでGNDになります。
なので、ここをコントロールすれば鍵を制御できます。

改造に邪魔なので電池ホルダーをはずして、制御モジュールのコネクタと配線を繋いでいきます。
電源の3.3V,GNDの線とFET-SWの線をopen,closeのpush-swのpull-up側に接続します。
これで鍵自体は制御できました。


これにドアが開いているかを検知するセンサーと内側からドアを開けたい場合に押すスイッチを追加して完成です。




2015年11月20日金曜日

車のバッテリーチェック

以前、車の室内灯を点けっぱなしで一週間おいてしまいバッテリーが上がってしまったことがありました。
室内灯のスイッチがPush-Pushのスイッチなので頭があたったか何かで点いてしまったのかもしれません。
そのときは近所の人にブースターケーブルで繋いでもらい暫く走ってなんとか復活したのですが、なんとかしないとまたやりそうなので対策を作ってみました。
回路は簡単でバッテリーの12VをDC-DCコンバータで3.3Vに落としてXBeeの電源とし、同じ12Vを33Kと2Kで分圧してXBeeのADCに入れています。
DC-DCを使ったのは12Vから3.3Vにレギュレータで落とすとちょと損失が大きくなるためです。
実測するとXBeeの送信時に10mA程度、sleep時には0.1mA程度で30秒に1回500ms程度通信するので問題なさそうです。
サーバーのほうはXBeeが送ってくる電圧が12Vを切ったらメールするように設定したのでバッテリーが上る前に気がつけると思います。

FRISKケースに入れて

 車の中のバッテリー電源に接続します。

金属部品だらけなので電波が飛ぶか心配でしたが家のすぐ前なので大丈夫でした。


2015年11月14日土曜日

KiCad4.0RC2

KiCad4.0RC2が出ました。
buildしたのでイメージをKiCad4.0RC2.dmgに置いておきます。

標準のbuildとは下記の点が異なっています。
- TrackPad/MagicMouseの動作をMacの標準的な動作に変更しています
- /Library/Application Support/kicad/internatが読まれてないので検索パスを追加しています
- fontを日本語対応のものに差し替えています

イメージをダウンロードして開くとkicadアプリケーションとkicadディレクトリがあります。
kicad.appは/Applications
kicadは/Library/Application\ Support
にそれぞれコピーします。
(finderで開いた時の矢印のとおりにDrag&Dropして下さい)

最初の1回めは開発元が未確認のため開けませんと言われてしまうので、/Applicationフォルダを開いてKiCadを右クリックし「開く」を選択して、ダイアログボックスの「開く」を選択すると起動します。

変更の詳細とbuildの手順を以下のとおりです。
今回はKiCadのbuildよりもOS X El Capitanに入れ替えた影響で色々とはまってしまいました。

変更内容はRC1の時にも書きましたが、もう一度書いておきます。

build済みはNightlyBuildがhttp://downloads.kicad-pcb.org/osx/にありますが、TrackPad/MagicMouseの使い勝手がMacの標準的な使い方とあっていません。
具体的にはTrackPadならピンチで拡大・縮小、2本指の操作で指を動かす方向にスクロール、MagicMaouseなら1本指で指を動かした方向にスクロールというのが標準的な使い方かと思います。(人によっては異論があるかもしれませんが、私はこれに慣れてしまっています)
NightlyBuildの方はTrackPadのピンチは効かず、2本指の操作で拡大/縮小、MagicMouseの1本指の操作も拡大/縮小になっています。
これはWindowsマウスのホイール動作に拡大/縮小が割り当てられているためと思われますが、クリック感があり上下にしか動かないホイールの動作とTrackPad/MagicMouseの360°操作では使い勝手が大きく違って、何をするにも画面が大きく拡大/縮小されてしまって使い物になりません。
仕方がないので自分でbuildします。

幸いなことに、この件に関するpatchがKiCadの中に既に含まれていて必要なpatchを当ててbuildしてくれるscriptが用意されています。
以前~gcorral/kicad/osx-trackpad-gesturesというbranchで進んでいたOSXのtrackpad対応が入っているようです。
これでbuildしてみて実行してみましたが、どうも以前のようにうまく行きません。
TrackPadのピンチで拡大/縮小が出来るようになっているのですが、2本指での操作でも拡大/縮小になってしまいます。MagicMouseの方も同様です。
osx-trackpad-gesturesと4.0のツリーを比較してみると関係ありそうな所が数箇所あったので修正してみました。
後々の為にpatchにしておきます。(あとでbuildの詳細でやり方を説明します)
これでbuildすると、当初の目論見どおり2本指の操作でスクロール、MagicMouseでもスクロールに出来ました。
さらに基板に日本語でシルクを入れられるように日本語フォント対応も追加します。
Windows環境が必要ですが、ここの手順どおりで日本語フォントを含んだnewstroke_font.cppを作成出来ます。
 http://wiki.kicad.jp/日本語フォントのマージ手順

ここまででひと通り準備が整ったので、以下buildの詳細手順です。

最初に面倒くさいところからやっていきます。
1.brewの対応のための/usr/local/の作成(これは既にbrewをinstallされてれば存在しているので不要です)
2.boostのbuildの対応のために/usr/libにsymbolic-linkを貼ります
こちらは/usr/libに幾つかdylibが存在しないためエラーになるための対応です。

El Capitanの場合、通常は/usr以下はroot権限でも書込みできません。
そのため以下の手順で一旦書き込みできる状態にして、変更後に書き込みできない状態に戻します。

⌘-Rを押しながら再起動してリカバリーモードに入ります。
ユーティリティのTerminalを起動し
# csrutil disable
を設定し再起動
# sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/lib/*.dylib /usr/lib
でsymbolic linkを作成
もし/usr/local/を作ってない場合は作成します。
# sudo mkdir /usr/local
# sudo chown $(whoami):admin /usr/local
一応セキュリティリスクを減らすためにrootlessをenableに戻します。
再度⌘-Rを押しながら再起動し
Terminalで
# csrutil enable
にもどして再起動

以下はXcodeとCommandLineTools、brewが入っている前提で書きますので無い場合は入れて下さい。

まずはbrewを最新の状態にして必要な物をinstallします。
# brew update
# brew upgrade
# brew install cmake bzr glew cairo swig openssl

bzrに自分の名前とメールアドレスを設定します。
# bzr whoami '自分の名前 <name@example.net>'

適当なところにKiCad build用のdirectoryを掘ります。
# mkdir KiCad4.0
# cd KiCad4.0

KiCad 4.0のソースコード入手
# bzr branch lp:kicad/4.0

wxPythonソースコード入手
http://www.wxpython.org/download.php#source
から下の方にあるwxPython-srcのlinkをたどってtar-ballを取得し先ほどのdirectoryに移動し展開します。ブラウザで辿ってもいいですが下記で取得できます。
# curl -O http://jaist.dl.sourceforge.net/project/wxpython/wxPython/3.0.2.0/wxPython-src-3.0.2.0.tar.bz2
# tar xjvf wxPython-src-3.0.2.0.tar.bz2

展開されたdirectory名を変更しておきます。
# mv wxPython-src-3.0.2.0 wx-src

kicad4.0rc2_macosx_patch.tgzをダウンロードして先ほどのdirectoryに移動し展開します。


kicad_macosx_scroll.patch
kicad_macosx_internat.patch
newstroke_font.cpp_j
の3のつのファイルができます。

TrackPad、MagicMouseのスクロール対応とEl Capitan対応
# cd 4.0
# patch -p0 < ../kicad_maxosx_scroll.patch

このpatchで
common/draw_panel.cpp
common/view/wx_view_controls.cpp
scripts/osx_build_wx.sh
の3つのファイルを修正しています。

/Library/Application Support/kicad/internatのパスを検索していないようなので修正
# patch -p0 < ../kicad_macosx_internat.patch

このpatchで
common/pgm_base.cpp
のファイルを修正しています。

日本語フォント対応
# cp ../newstroke_font.cpp_j common/newstroke_font.cpp

更になぜか私の環境ではbzr-svnで/Library/Python/2.6/site-packages/subvertpy/client.soを呼び出しているところでrpathが設定されておらず下のようなエラーが発生します。

bzr: ERROR: Unable to import library "subvertpy": bzr-svn: Unable to load subvertpy extensions: dlopen(/Library/Python/2.6/site-packages/subvertpy/client.so, 2): Library not loaded: @rpath/lib/libsvn_diff-1.0.dylib
  Referenced from: /usr/lib/libsvn_client-1.0.dylib
  Reason: image not found

これは私の環境だけかもしれないのでエラーが出たら以下の対処をして下さい。
/Library/Python/2.6/site-packages/subvertpy/client.soに細工をします。
# cd /Library/Python/2.6/site-packages/subvertpy
戻せるようにbackupをとって
# sudo cp client.so client.so_org
client.soにrpathを/usrとして追加
# sudo install_name_tool -add_rpath /usr client.so
これでbzr-svnのエラーが出なくなります。

次にwxPythonのbuildです。結構時間がかかります。
# sh scripts/osx_build_wx.sh ../wx-src ../wx-bin ./ 10.11 -j4
# cd ..

kicad本体のbuild。こちらもかなり時間がかかります。
# mkdir build
# cd buld
# cmake ../4.0 \
      -DCMAKE_C_COMPILER=clang \
      -DCMAKE_CXX_COMPILER=clang++ \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.11 \
      -DPYTHON_EXECUTABLE=`which python` \
      -DKICAD_SCRIPTING=ON \
      -DKICAD_SCRIPTING_MODULES=ON \
      -DKICAD_SCRIPTING_WXPYTHON=ON \
      -DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
      -DPYTHON_SITE_PACKAGE_PATH=`pwd`/../wx-bin/lib/python2.7/site-packages \
      -DCMAKE_INSTALL_PREFIX=../bin \
      -DUSE_IMAGES_IN_MENUS=ON \
      -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl \
      -DCMAKE_BUILD_TYPE=Release
# make
# make install
# cd ..

次にその他のリソースをNightlyBuildから持ってきて無理やりパッケージし直します。
http://downloads.kicad-pcb.org/osx/のRC2相当はkicad-r6303なのでこれをダウンロードしてマウントします。

# curl -O http://downloads.kicad-pcb.org/osx/kicad-r6303.20151109-045453.dmg

そのままではReadOnlyなのでRW出来るように変換します。

# hdiutil convert kicad-r6303.20151109-045453.dmg -format UDSP -o kicad-r6303.sparseimage
# hdiutil attach kicad-r6303.sparseimage

アプリケーション本体を置き換えるため大文字のKiCadディレクトリを削除します。
# rm -rf /Volumes/KiCad/Kicad
finder上の位置合わせをconsoleからできないのでfinderでbin/KiCad.appを開いているKiCad Volume上のKiCadディレクトリがあったところにコピーします。

フォルダを開いたままの状態でdiskimageをdetachします。
# hdiutil detach /Volumes/KiCad

イメージの未使用領域を開放します。
# hdiutil compact kicad-r6303.sparseimage

最終的なReadOnly圧縮イメージに変換します。
# hdiutil convert kicad-r6303.sparseimage -format UDZO -o KiCad4.0RC2.dmg

このイメージが一番上のほうに置いてあるイメージになります。

2015年11月7日土曜日

KiCad 4.0RC1でESP-WROOM-02用基板作成 その6

次はESP-WROOM-02版です。

RP-3基板





HA-4基板


こちらの基板はXBeeの裏面に書かれているアドレスを読み取れるようにXBeeの下のところに穴を開けてあるのですが、ESP-WROOM-02を載せると丁度放熱用のPadのところが穴に位置してしまってあまりよろしくないかもしれません。

まだ、ESP-WROOM-02をどう使うか悩み中です。ATコマンドのままでうまく使っていくのか、何らかの独自のバイナリのI/Fを定義してAVRと通信させるのか、とか考えてるところです。


2015年10月31日土曜日

KiCad 4.0RC1でESP-WROOM-02用基板作成 その5

基板が上がってきたので部品をマウントしてみます。
まずは従来通りのXBee版です。

RP-3基板
いい感じです。

HA-4基板
こちらもいい感じです。


RP-3基板をRaspberryPi2と組み合わせます。


あれ?

RP-3基板のHA-4基板書き込み用のコネクタがRaspberryPi2のHDMI、Audioコネクタと干渉しています。
CAD上で基板の板端をギリギリで避けたつもりだったのですが、コネクタの出っ張りを考慮するのを忘れてました。
実物確認しなかったためのミスです。
回路動作チェックをしてソフト書いたらもう一度出し直しです.......


2015年10月23日金曜日

KiCad 4.0RC1でESP-WROOM-02用基板作成 その4

日曜日に届きました。



速かったです。注文してから8日です。
10/10(土)の朝に出して10/14(水)の夕方には基板が上がってきてDHLに渡されています。
business day 4-7日となっていたのに土日も動いてくれてるんですね。
そのあと39時間後の10/16(金)の朝には国内についてますが、そこから配達されるまで49時間もかかってます。
実際の配達は佐川急便でした。
深センから成田のほうが成田から東京より近いようですね。

Wednesday, October 14, 2015
1 Shipment picked up SHENZHEN - CHINA             18:50
2 Processed at SHENZHEN - CHINA                      22:59
3 Departed Facility in SHENZHEN                      23:04
4 Clearance event SHENZHEN - CHINA, PEOPLES REPUBLIC 23:18

Thursday, October 15, 2015
5 Customs status updated HONG KONG            00:16
6 Clearance processing complete at SHENZHEN - CHINA  01:19
7 Arrived at Sort Facility HONG KONG                 03:17
8 Processed at HONG KONG                             06:37
9 Clearance processing complete at HONG KONG         06:37
10 Processed at HONG KONG                            19:15
11 Departed Facility in HONG KONG                    22:34

Friday, October 16, 2015
12 Customs status updated TOKYO - JAPAN        03:07
13 Transferred through TOKYO - JAPAN                 08:42
14 Arrived at Sort Facility TOKYO - JAPAN      10:00
15 Clearance event TOKYO - JAPAN                     10:37
16 Processed for clearance at TOKYO - JAPAN          10:37
17 Customs status updated TOKYO - JAPAN        22:42
18 Clearance processing complete at TOKYO - JAPAN    22:56

Saturday, October 17, 2015
19 Processed at TOKYO - JAPAN                        01:21
20 Departed Facility in TOKYO - JAPAN                01:45
21 Arrived at Delivery Facility in TOKYO - JAPAN     08:13
22 Forwarded for delivery TOKYO - JAPAN        09:33

Sunday, October 18, 2015
23 Delivery attempted; recipient not home            10:58
24 Delivered - Signed for by : DLVD BY AGNT          19:31


2015年10月16日金曜日

KiCad 4.0RC1でESP-WROOM-02用基板作成 その3

とくにパターン的におかしくなかったのでElecrowに出してみました。
Elecrowの注文のページは以前はクレジットカードもPayPalのシステム経由だったのでちゃんとしていたけど、今回は直接クレジットカードの番号を入れるように変わってました。
ただ、このページhttpで暗号化されていません。クレジットカードの入力が暗号化されてないのはちょっと不安なのでpaypalにしました。
送料は820gでShenzhen DHLが$20.44、Registerd Air Parcelが$17.02と$3位の差なのでDHLを選択。
片方はpanelize有りなので+1日かな。国慶節の連休明けなので注文が溜まってるから動きが遅そう。
10/10(土)に出したので月曜日から作業し始めてbusiness dayで10日くらいとすると10/26の週に到着ぐらいかな.....と思っていたら10/10の内に
10/10/2015 In production Dear Customer,
We have put your design into production, it will needs about 4-7 business days. Thank you!
Best Regards
Elecrow
と返ってきました。それでも混んでるから7business daysだろうと考えていたのですが10/15(木)の朝に写真付きで出荷の連絡がきました。


この辺がElecrowのいいところですね。深センは時差の関係で10/14(水)です。

DHLのTrackingを確認すると

Wednesday, October 14, 2015
1 Shipment picked up SHENZHEN - CHINA             18:50
2 Processed at SHENZHEN - CHINA                      22:59
3 Departed Facility in SHENZHEN                      23:04
4 Clearance event SHENZHEN - CHINA, PEOPLES REPUBLIC 23:18
Thursday, October 15, 2015
5 Customs status updated HONG KONG            00:16
6 Clearance processing complete at SHENZHEN - CHINA  01:19
7 Arrived at Sort Facility HONG KONG                 03:17
8 Processed at HONG KONG                             06:37
9 Clearance processing complete at HONG KONG         06:37
10 Processed at HONG KONG                            19:15
11 Departed Facility in HONG KONG                    22:34

Friday, October 16, 2015
12 Customs status updated TOKYO - JAPAN              03:07
13 Transferred through TOKYO - JAPAN                 08:42
14 Arrived at Sort Facility TOKYO - JAPAN            10:00
15 Clearance event TOKYO - JAPAN                     10:37
16 Processed for clearance at TOKYO - JAPAN          10:37

この調子だと週末か週明けには到着しそうです。

2015年10月9日金曜日

KiCad 4.0RC1でESP-WROOM-02用基板作成 その2

2つ目の基板を作成してみました。
HA端子、SW制御、赤外線リモコン送信、受信、GPIO、ADC機能の子基板で以前XBee用に設計したものをESP-WROOM-02対応とダイオード、FETが小さすぎてハンダ付けがしにくいのでひとまわり大きいものに変更したり、機能を変更したりしました。

回路図は以下のとおり


出来上がったパターンは以下のとおりです。



KiCADのバグでしょうか?

DRCの未配線は無いので大丈夫だと思うのですが、KiCADのpcbnewをOpenGLモードで見ていると下側のStatusのところの未配線が2になっています。

これが表示設定を標準にすると0になります。


KiCADのBZR5814とかで作った前回のパターンからいじったのでどこかにゴミデータでも残っているのかもしれませんが、よくわかりません。BZR5814で開くとOpenGLモードでも未配線が0になります。
最初から4.0RC1で作成したRP-3基板はOpenGLモードでも未配線0なので、この基板データ固有の問題かもしれません。

急いでも仕方が無いので週末にガーバーの確認をしてから出図しようかと思います。
Elecrowも国慶節明けで混んでそうなので、週明けくらいに出してもあまり変わらないかと。

今回の基板は10cm x 10cmに3枚面つけでV-Cutの予定です。
RP-3基板と今回の基板それぞれ10枚で、まとめると送料が安くなりそうです。




2015年10月2日金曜日

KiCad 4.0RC1でRaspberryPi2用のESP-WROOM-02用基板作成

KiCad 4.0RC1をせっかくbuildしたのでESP-WROOM-02用の基板を作成してみました。
RaspberryPi2用の基板ですがHAT規格ではありません。合わせられる所はHAT規格に合わせてますが、ACアダプタ用のコネクタを後ろ側から出すため基板外形を変更しています。
ケースは以前作成したRP-2基板用のものを流用する予定です。

回路は色々と余計なものがついていますが、基本的にはRaspberryPi2の電源をUSB-miniからではなくACアダプタ用のコネクタを背面側に出すための回路と、XBeeモジュール・ESP-WROOM-02のいずれか経由で子機と接続するための回路、RaspberryPi2に赤外線リモコンの送受信機能を追加するための回路、子機として使う時のためのAVRマイコン回路で必要に応じてマウント部品を変更して使うようにしています。

回路図は以下のとおり






で出来上がったパターンが以下のとおりです。


SWITCH-SCHIENCEがSeedStudioのPCB作成サービスの取り扱いを始めたのでこちらでお願いするか、以前出したElecrowに出すか、どちらが安いのか比較してみます。
今回は10cm x 10cm x 1.0mm panelizeなし、黒レジスト、10枚です。

SWITCH-SCHIENCEの場合
 Greenレジスト 10cmX10cm基板で3074円
 それ以外のレジスト 10cmX10cm基板で5882円
 +パブリックベータ期間なら送料324円、通常は1080円
で緑レジストの最安なら3398円
黒レジストにすると6206円

Elecrowの場合
 Greenレジスト 10cmX10cm基板$14
 それ以外のレジスト 10cmX10cm基板$15.9
 + 送料(Registerd Airmaailで$10.37,DHLで$16.37)
で緑レジストの最安で$24.37 = 2924円 ($1=120円換算)
黒レジストにすると$26.27 = 3152円
DHLにすると+720円

価格は緑レジストにすればいい勝負ですが他の色の場合はElecrowの方が半額近いですね。
納期はSWITCH-SCHIENCEは14-21日、ElecrowはこれまでDHLでの経験では1回目14日、2回目v-cutありでも14日だったので、こちらもそれほどの違いはなさそう。
ということで今回は黒色にしたいのでElecrowでRegisterd Airmailを試してみます。
.........
ところが、注文しようとしたらElecrowは国慶節で10/7までお休みでした。
別に急いでないので、もう1つの基板も描いてまとめて注文しようかと思います。

2015年9月18日金曜日

KiCad4.0 RC1(bzr6188) for OS-X

KiCad4.0 RC1が出ましたね。
早速試してみます。
build済みはNightlyBuildが
http://downloads.kicad-pcb.org/osx/
にありますが、TrackPad/MagicMouseの使い勝手がMacの標準的な使い方とあっていません。
具体的にはTrackPadならピンチで拡大・縮小、2本指の操作で指を動かす方向にスクロール、MagicMaouseなら1本指で指を動かした方向にスクロールというのが標準的な使い方ではないかと思います。(人によっては異論があるかもしれませんが、私はこれに慣れてしまっています)
NightlyBuildの方はTrackPadのピンチは効かず、2本指の操作で拡大/縮小、MagicMouseの1本指の操作も拡大/縮小になっています。
これはWindowsマウスのホイール動作に拡大/縮小が割り当てられているためと思われますが、クリック感があり上下にしか動かないホイールの動作とTrackPad/MagicMouseの360°操作では使い勝手が大きく違って、何をするにも画面が大きく拡大/縮小されてしまって使い物になりません。

仕方がないので自分でbuildします。
幸いなことに、この件に関するpatchがKiCadの中に既に含まれていて必要なpatchを当ててbuildしてくれるscriptが用意されています。
以前~gcorral/kicad/osx-trackpad-gesturesというbranchで進んでいたOSXのtrackpad対応が入っているようです。

これでbuildしてみて実行してみましたが、どうも以前のようにうまく行きません。
TrackPadのピンチで拡大/縮小が出来るようになっているのですが、2本指での操作でも拡大/縮小になってしまいます。MagicMouseの方も同様です。

osx-trackpad-gesturesと4.0のツリーを比較してみると関係ありそうな所が数箇所あったので修正してみました。
後々の為にpatchにしておきます。(あとでbuildの詳細でやり方を説明します)
これでbuildすると、当初の目論見どおり2本指の操作でスクロール、MagicMouseでもスクロールに出来ました。
さらに基板に日本語でシルクを入れられるように日本語フォント対応も追加します。
Windows環境が必要ですが、ここの手順どおりで日本語フォントを含んだnewstroke_font.cppを作成出来ます。
 http://wiki.kicad.jp/日本語フォントのマージ手順

ここまででひと通り準備が整ったので、以下buildの詳細手順です。
build方法は以下のページを参考にさせていただきました。
http://ochaochaocha3.hateblo.jp/entry/2015/01/05/installing-kicad-on-mac-os-x
ほぼ同じ手順ですが、patchに対応が入っていたりするので順番に記述します。

XcodeとCommandLineTools、brewが入っている前提で書きますので、ない場合は入れておいて下さい。

まずはbrewを最新の状態にして必要な物をinstallします。
# brew update
# brew install cmake bzr glew cairo swig

bzrに自分の名前とメールアドレスを設定します。
# bzr whoami '自分の名前 <name@example.net>'

適当なところにKiCad build用のdirectoryを掘ります。
# mkdir KiCad4.0
# cd KiCad4.0

KiCad 4.0のソースコード入手
# bzr branch lp:kicad/4.0

wxPythonソースコード入手
http://www.wxpython.org/download.php#source
から下の方にあるwxPython-srcのlinkをたどってtar-ballを取得し先ほどのdirectoryに移動し展開します。
# tar xjvf wxPython-src-3.0.2.0.tar.bz2

展開されたdirectory名を変更しておきます。
# mv wxPython-src-3.0.2.0 wx-src

以下のファイルをダウンロードして先ほどのdirectoryに移動し展開します。
kicad4.0_osx_patch.tgz

kicad_macosx_scroll.patch
newstroke_font.cpp
の2つのファイルができます。

TrackPad、MagicMouseのスクロール対応とyosemite対応
# cd 4.0
# patch -p0 < ../kicad_maxosx_scroll.patch

このpatchで
4.0/common/draw_panel.cpp
4.0/common/view/wx_view_controls.cpp
4.0/scripts/osx_build_wx.sh
の3つのファイルを修正しています。

日本語フォント対応
# cp ../newstroke_font.cpp common/newstroke_font.cpp

boost対応
/usr/libに幾つかdylibが存在しないためエラーになる
# sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/lib/*.dylib /usr/lib
でsymbolic linkを作成

El Capitanではrootでも/usr/libに書き込み出来ないのでrootless対応が必要になるようです。

wxPythonのbuild 結構時間がかかります。
# sh scripts/osx_build_wx.sh ../wx-src ../wx-bin ./ 10.10 -j4
# cd ..

kicad本体のbuild こちらもかなり時間がかかります。
# mkdir build
# cd buld
# cmake ../4.0 \
      -DCMAKE_C_COMPILER=clang \
      -DCMAKE_CXX_COMPILER=clang++ \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.10 \
      -DPYTHON_EXECUTABLE=`which python` \
      -DKICAD_SCRIPTING=ON \
      -DKICAD_SCRIPTING_MODULES=ON \
      -DKICAD_SCRIPTING_WXPYTHON=ON \
      -DwxWidgets_CONFIG_EXECUTABLE=../wx-bin/bin/wx-config \
      -DPYTHON_SITE_PACKAGE_PATH=`pwd`/../wx-bin/lib/python2.7/site-packages \
      -DCMAKE_INSTALL_PREFIX=../bin \
      -DUSE_IMAGES_IN_MENUS=ON \
      -DCMAKE_BUILD_TYPE=Release
# make
# make install
# cd ..

ここまででKiCad4.0/bin/にkicadの本体が出来上がります。

次にライブラリなど/Library/Application\ Support/kicad/に配置するものを集めます。
まず集める為のdirectoryを準備します。

# mkdir -p release/kicad

NightlyBuildをみるとkicad以下には下記のdirectoryがあります。
kicad/demos
kicad/help
kicad/internat
kicad/library
kicad/packages3d
kicad/template
ただしkicad/internatはkicad/share/intarnatに置かないと効果がないようです。

kicadをbuildするとbinに出来ているkicad.appとdemosをコピーします。
# cp -pr bin/kicad.app release
# cp -pr bin/demos release/kicad

次にlibrary, packages3d, templateを取得します。
# git clone https://github.com/KiCad/kicad-library.git
# cp -pr kicad-library/library release/kicad
# cp -pr kicad-library/modules/packages3d release/kicad
# cp -pr kicad-library/template release/kicad

次はhelp,internatを取得します。
公式repoはbzr branch lp:~kicad-developers/kicad/docなのですがgitの方が速いので非公式repoですがこちらから取得。
# git clone https://github.com/blairbonnett-mirrors/kicad-doc.git
# cp -pr kicad-doc/doc/help release/kicad
# mkdir release/kicad/share
# cp -pr kicad-doc/internat release/kicad/share

helpが古いのでkicad.jpの方々の最新版の翻訳(感謝!)に差し替えます。
# curl http://kicad.jp/translate/CvPcb.pdf -o release/kicad/help/ja/CvPcb.pdf
# curl http://kicad.jp/translate/Eeschema.pdf -o release/kicad/help/ja/Eeschema.pdf
# curl http://kicad.jp/translate/GerbView.pdf -o release/kicad/help/ja/GerbView.pdf
# curl http://kicad.jp/translate/Getting_Started_in_KiCad.pdf -o release/kicad/help/ja/Getting_Started_in_KiCad.pdf
# curl http://kicad.jp/translate/IDF_Exporter.pdf -o release/kicad/help/ja/IDF_Exporter.pdf
# curl http://kicad.jp/translate/KiCad.pdf -o release/kicad/help/ja/KiCad.pdf
# curl http://kicad.jp/translate/Pcbnew.pdf -o release/kicad/help/ja/Pcbnew.pdf
# curl http://kicad.jp/translate/Pl_Editor.pdf -o release/kicad/help/ja/Pl_Editor.pdf

これでrelease以下にkicad.appとkicadの2つのdirectoryが出来上がりました。
ここまでのreleaseをKiCad4.0RC1にrenameしたものを下記に置いておきます。

KiCad4.0RC1.zip

上のファイルを展開して
kicad.appは/Applications
kicadは/Library/Application\ Support
にそれぞれ移動します。

上記からダウンロードした場合、最初の1回めは開発元が未確認のため開けませんと言われてしまうので /Applicationフォルダを開いてKiCadを右クリックし「開く」を選択してダイアログボックスの「開く」を選択すると起動します。
起動するとタイトルバーにKiCad (2015-09-12 BR6188) .....と出ていれば正しく開けていると思います。
/Library/Application\ Support/kicad/demoに幾つかサンプルが入っているのでkicadから開いてみてください。

まだRC1なのでお試し用であることを踏まえて使ってください。

2015年7月10日金曜日

バーチカルブラインドの電動化 その5

仮組みした所はロフトからアクセスが簡単な、目的とは別のブラインドの手動の紐が出ている側ですが、実際に取り付けたい所は簡単にアクセス出来ない吹き抜けの上のブラインドで、手動の紐と両立したいので手動の紐の出ていない側になります。梯子をかけて頑張って取り付けました。




紐の無い側の構造は非常に簡単で、2本の軸をスペーサーと止め輪(丸くて内側に歯がついていて軸に咬むようになっているリング)で止まっているだけなので止め輪を2つ外すことで簡単に取り外せます。写真はカバーと止め輪とスペーサーを外した状態です。

ここにモーター部を取り付けます。上から見るとこんな感じです。



ちょっとごちゃごちゃしていますが吹き抜けのところなので下から4.5mほどあり、それほど気になりません。




実際の動作はこんな感じです。




実験していた側のブラインドが24枚スラットだったのですが、最終的に取り付けた側のブラインドが30枚スラットと増えているのと僅かですが手動用の紐の負荷もあるのでちょっと重そうです。

本当はもう少し強力なモーターの方が良さそうですが、モーターの軸間が20mmなので直径20mm以下のモーターで手頃なものとなるとなかなか選択肢が無いのとGear比をこれ以上高くすると今度は手動で回せなくなりそうなので暫くこれで運用してみようかと思います。





2015年7月3日金曜日

バーチカルブラインドの電動化 その4





モーター電源を9V化しました。
基板も作り替えて3端子レギュレータをmurataのDC-DCコンバータに置き換えました。
これまではモーターを外形を軽く保持する形で構成していたのですが、回転で押されて位置が変動するのでちゃんと固定する形にしました。それに合わせてアクリル板も再設計して基板もカバーする形にしました。


カバー部分を曲げてこうなります。


モーター部分の固定


組み上げたところ


仮組みで取り付けてみたところ


制御ソフトも組んだので、スラットを半分回して全開まで送ってみました。


ちゃんと最後まで動いています。