2016年12月28日水曜日

Arduinoでロータリーエンコーダー

[追記]「この書き方だと、メインルーチンの方で値を読み込もうとしている間にインタラプトが入って値が桁上り時などにとんでもない値に変わってしまう可能性がある」とのご指摘をいただきました。

Z80アセンブラやCP/M上でBDS-Cなんていじってた当時はそういうのに気遣うのは当たり前だったんですが、すっかり高級言語で安逸な暮らしをしておりました……いかんですね。

記事はこちらです。

ご指摘感謝します[追記終わり:2022年3月11日]

写真:まさにバラック配線w

「ロータリエンコーダーなんて懐かしいブツのためにライブラリ使うこともないわなー」

…と考えていたこともありました。さがすより作った方が速いわw …なんて。

いえ、結局自分で作ったんですけどね…ちゃんと動くまで2時間ぐらいかかりました。

■原理■

あちこちで書かれているので簡単にまとめると、ロータリーエンコーダは位相の90度ずれた2つのスイッチからの信号を元にして、どっち向きにどのぐらい回転したかを検出するデバイスです。まぁ回転とは限らないのですが、ほとんど回転物で使われます。

2つのスイッチからの信号を2ビットのデータとみなした場合、正回転だと値 0▶1▶3▶2 と変化します。逆回転だと 2▶3▶1▶0 ですね。0123あるいは3210と変化してくれればまだ簡単なのですが、これは一種のグレイコードというもので状態の変化(この場合は回転)で一度に1ビットずつしか変わらないようにしているものです。1ビットしか変わらないので、チャタリングが起こっても値がどったんばったんすることがないというスグレモノ。

なので、今回はこれを読んだ値>順番値に変換します
int readEncoder() {
  const byte gray[] = {0, 1, 3, 2};
  return gray[(digitalRead(EncoderA) << 1) | digitalRead(EncoderB)];
}
これでめでたく0,1,2,3の値が返ってきます。

あとは、両方のピンに対して割り込みを指定し
void attachEncoder() {
  attachInterrupt(digitalPinToInterrupt(EncoderA), encoder, CHANGE);
  attachInterrupt(digitalPinToInterrupt(EncoderB), encoder, CHANGE);
}
割り込みを受け付けるルーチンではこんな感じに増分と繰り上がりを処理します。
void encoder() {
  detachEncoder();
  delay(10);

  prevGray = currentGray;
  currentGray = readEncoder();
  if (currentGray == prevGray + 1 || (currentGray == 0 && prevGray == 3)) {
    encoderValue++;
  }
  if (currentGray + 1 == prevGray || (currentGray == 3 && prevGray == 0)) {
    encoderValue--;
  }

  attachEncoder();
}
delayはチャタリング対策。普通は1mSecぐらいで良いんですが、粗悪品なのでこれでやっと安定しましたw ただ、delay大きすぎると応答が鈍くなるので高速回転するものには使えません。1秒100パルスを超えるようなものについてはフォトインタラプタを使うかコンデンサ+シュミットトリガでハード的なチャタリング対策をしましょう。

あと初期化と定義部分です。
const int EncoderA = 2;
const int EncoderB = 3;
volatile char prevGray;
volatile char currentGray;
volatile int encoderValue = 0;
void setupEncoder() {
  pinMode(EncoderA, INPUT_PULLUP);
  pinMode(EncoderB, INPUT_PULLUP);
  prevGray = currentGray = readEncoder();
  attachEncoder();
}


値はメインループで
int prevValue = -1;
void loop() {
 
  if (prevValue != encoderValue) {
    Serial.println(encoderValue);
    prevValue = encoderValue;
  }
  delay(100);
}
などと使えばOKです。あ、setupEncoderはsetupから呼び出してください。

[追記]冒頭の追記に関する部分ですが、この当時のこのブログの文字修飾方法が古すぎてソースを編集できないので加筆します。

void loop()と最初の行の間に
  noInterrupts();
  int copyValue = encoderValue;
  interrupts();
として、copyValueを使うようにしてください。値をコピーする間インタラプトを止めて、コピー後にインタラプト再開しています。こうすればご指摘いただいたような現象は回避できます。また、ARMやESP32などでは4バイトのうちの一部が変わって、というような現象は起きないですが、後続処理中に値が変わったら困る場合には上記のような処置が必要です。

しかし5年前の記事か……最近はインタラプト使わずノンプリエンプティブマルチタスクのFreeRTOSで安直な人生を送っております(遠い目)[追記終わり2022/03/11]

いやー…実は機械式ロータリーエンコーダを扱うのはこれが生まれて初めてでした。IoTとかで上流ばっかり見てないで、たまには足元のあれこれもいじらないといかんですね。

なお、試作なのでジャンク使っていますが、納品用にはちゃんとアルプス製を使いますからご安心ください>お客様

ああ…ロータリーエンコーダーの操作の通りにスムーズに回転/逆転するモーター。気持ちがいい…w

余談ですが写真で赤く光っているフジソク 照光式押ボタンスイッチ CLP44-L2-2はすごく良いですね。無接点(赤外線インタラプタ)なので安心して使えて120円。昔こういうスイッチって1000円ぐらいしたんだよなぁ…と遠い目をしておしまい。

秋月のサイトから

■(久々の)ハマりポイント■

  • え!Arduinoって全ピンでInterrupt使えないの?
    配線して動かしても全然反応がありません。他のプラットフォーム同様、attachすれば全部イケるのかと思ってたんですが…Arduino nano / unoの場合にはD2, D3しかインタラプトに使えないんですね…はっはっはっはっは。

  • Encoderの仕様書がなくてピンを間違う
    aitendoで買ったほぼジャンクのエンコーダで試しています。このタイプのエンコーダには3本の端子がA-GND-Bと並んでいるものと、A-B-GNDのものがあります。今回、事前にテスターで調べてA-B-GNDだと判断したのですが、しばらく動かしてどうもおかしい。ネット上に上がっているプログラムでも正しく動かない。改めてテスターで調べたら前者ではなく後者だったという落ち。
  • prevの処理
    前回読み込んだ値と、今回読み込んだ値を比較するために、今回の値をprevGrayに保存しておくべきなのですが。忘れてました。何その致命的ボケorz

  • やけにノイズが規則的だなある程度動くようになってから、シャフトのクリック感に合わせて動かすと4,8,12,16....16,12,8,4と4の倍数ずつ増減します。たまに数字が飛ぶので、チャタリング豪快だなwと思ってしまったんですが…単にクリック間に4パルス出てた、という落ちでした。普通そう考えるだろ…。
ああ恥ずかしい…。

2016年12月22日木曜日

Arduinoで実用品:ポンプ駆動装置・1 【ハード編】


■概要■

ご依頼をいただいて、24Vギヤードモータ付きチューブポンプ駆動装置をArduino nanoで作っています。

Arduino nanoを選んだのは、今回スイッチと表示機とモータードライバを駆動するのでGPIOがたくさん必要、WiFi不要、安価、5V仕様…など。

チューブポンプはツカサ電工のPT-FP1-550-KA,24V。定格24V600mAで1分間の吐出量550mlです。

モータードライバはモータードライバー TB6643KQ、今回逆転は必要ないのですが、一応汎用性を考えて選びました。保護回路などを考えるとバラのMOSFETで作るより安いですし。

表示器には電子工作業界標準(笑)のOLED 0.96を使います。

入力は、スタートボタン、内照付きストップボタン、フットスイッチ、設定用ロータリーエンコーダ。

ケースはアクリル板で作ります。このためにDraftSightという2D CADを習得して図面引きました。最初CADの操作感がわからず、いくつか穴の開いた長方形のアクリル板を描くのに2時間ぐらいかかりましたが、チュートリアルを終えた今、もうサクサクです(当社比)。Illustratorより性に合っている感じ。その後またIllustator派に鞍替えしましたw

当初アクリル板を仕入れてファブスペースみたかのレーザーカッターでカットしようと思っていたのですが…45分の使用料2160円+施設使用料1080円の合計3240円。ちょっと1枚カットしてくるだけだとちょっと痛いなぁ…と思ってElecrowさんのアクリル板加工サービスの見積を取ってみたら、送料を含めても未加工アクリル板を日本で買うよりも安かったので、お願いしてみようと思ってます。試作は近所で手軽に、完成品は海外で。おおメーカーっぽい(笑)。

■回路■



ACアダプタから24vを供給してモータードライバ経由でモーター、Arduinoは三端子DC/DCで9Vに落としてVinに供給します。モータードライバは1個でいいのですが、基板上がガラ空きだったので、2個付けられるようにしました。前述の各種スイッチの端子などもそれぞれコネクタ出し。それでもまだ大量にGPIOが余っているので、一応PADとして引き出しておきました。

なおEagle Libraryとしてインターネット上で見つけたArduino nanoを使ったのですが、ピン番号が間違っていたので書き直し。いやー、公開されているライブラリを信じるな、ってのはJava業務アプリなんかだと当たり前の話なんですが、部品でも同じっすね。

 Arduino nanoをソケットで実装する形にしています。お客様が遠いのでソフトをアップデートする必要があるときには、プログラムを書き込んだnanoをお送りして差し替えていただく想定です。

廉価版(prototype)だけど、きれいな仕上がり@Elecrow

なお、基板はご希望があれば送料込みサポートなし1枚1,000円でお分けします。 info@kurahashi-ya.com までメールください。

■ケース(仮)■

アクリル板で作りますが、アクリルは高いのでプロトタイプをMDFで作りました。

レーザーカッターでMDFを切断してスイッチなどを取り付けてみたら、こんな感じです。CADは無料のDraftSight Mac版を使いR2010形式で保存したものをIllustratorで整えて、Univarsalの30W炭酸ガスレーザーカッターを動かしました。

不器用でアルミシャーシをまっすぐ切断できなかったワタクシとしてはネジ穴などがビシっと合うのは嬉しいですw

仮組みというか乗っけただけですw

切断面が黒いのはレーザーカッターによるもの。MDFは木材の繊維を樹脂で固めたものなので、切断面は溶けた(燃えた?)樹脂で固まっていて触っても手に汚れがつくことはありません。布で強くこするとうっすら汚れが付く程度で、アルコールティッシュなどで拭き取っておけば大丈夫です。

しかしツマミが昭和なデザインだなorz ポンプ位置は少し手前にして全体の高さを低くし、ボタンももうちょっと右かな…。

というわけで、次回ソフト編に続きます。その後、ケース編で完結の予定です。

年内にはちょっと無理かな…。無理でした(2017-02-26)

2016年12月21日水曜日

ケースをレーザーカッターで作る

MDF切断中。ボックス内は煙で充満するw
昔電子工作といえばアルミシャーシでしたが残念ながら私はとても不器用です。しかし、今は図面がそのまま形になってしまう装置が手軽に使えるようになってきました。DMMの会員になって会社帰りに寄ろうか…などと考えていたら、比較的近所にレーザーカッターを使えるファブカフェを発見。

近所といっても自転車で20分ですが…レーザーカッター、UVプリンタ、3Dプリンタ(熱溶解積層法式と光造形形式があります)などがあり、今度、ローランドのデカいNCフライス盤が入って現在マニュアル制作中とのことです。楽しみ楽しみ。

で、何度か通って、アクリル板やトレーシングペーパーをカットして遊んでおります。レーザーカッター使用料(45分2,160円)と施設利用料(1日1,080円…微妙に痛い)が必要なので小遣いを逼迫しておりますが。

ここに入っているレーザーカッターはUNIVERSAL/VLS2.30という機種です。出力30Wの炭酸ガスレーザで、5mmぐらいの透明アクリル板でもきれいにカットできます。

このたび、そんな素人にもかかわらず受託開発の一貫としてケースも作って欲しいという依頼をいただいて、とりあえず自分用のアクリルケースで練習をしてみました。

■CADソフトで作図■

無料のMac版DraftSightを使用しています。

CADといえばPCB CADのEagleに苦戦したことは記憶にあたらしいところですが、やっぱCADというのは独特のUIを持っていて、パソコン歴30年を超えるワタクシでもマニュアルなしでサッと使えるというわけには行きませんでした。暗黙的にモードが切り替わるあたりに未だに慣れることができず、「画面上の95x100mmの長方形を100x105mmにする」という操作を調べるのに半日かかってしまいました(笑)。

エスケープでモードを抜ける>エンティティをクリックする>四つ角のどれかをクリックする>コマンドラインから@5,5と入力(相対座標をそれぞれ+5する、という意味)してリターン

って感じです。まぁ基本的にコマンド操作をマウスでやっているだけだし、パラメータはマウスよりキーボードから入れる方がラクで正確…というのをわかってしまえば何とかなるんですが。

なお、DraftSightで作図するときには、ブツの外形と寸法線、用紙サイズなどを別レイヤとして作っておく必要があります。でないと、寸法線などをいちいち削除しないとレーザーカッターに送れません。

■Adobe Illustratorへ■

前記レーザーカッターがIllustratorのプリンタドライバとして動作する関係上、Illustoratorが必須です。ファブスペース三鷹にもありますが、前記の通り45分2,160円なので自宅で準備しておかないと死にます。買いましたともさ、このために。デジハリ版の半額の奴ですが。

当初DraftSightから吐き出したDWG形式ファイルを読むことができなかったので、SVGやPDFにエキスポートして読み込んでいたのですが、そうすると何故かサイズが変わってしまいます。半分になったりすればさすがに気づくのですが、5%ぐらい小さくなるという微妙さ加減で、見事にアクリル板1枚ムダにしましたorz

結果としてわかったことは「DraftSightからR2010形式DWGで保存すれば何の問題もなくIllustratorで読み込める」です。Illustratorで読み込んだら、外形線レイヤを選んでパスの太さを0.01ptに設定するだけです。

■カットしました■

4mm厚さでA4サイズのアクリル板は約500-1000円。やすいのは押出成型、高いのはキャスト成形品です。寸法精度は前者の方が良いのですが、型に流し込んで成型するので分子量が多いキャスト型の方が強度や物性が優れています。今回は練習なので安い押出成型品を使いました。

それでも失敗したらもったいないので、さらに安い4mm厚のMDFで試し切りをしました。残念ながら、ファブスペース三鷹のレーザー加工機は調子がいまいちで、断面が垂直になってくれません。3mm厚のアクリル板でパッと見てわかるのだから相当です。

でも、とりあえずこんな風に7枚(天板は2枚重ねて、升に収まるようにしました)切れました。切断面はレーザーで燃えるので黒くなってしまいますが、それをデザインとして活かせるといいですね(願望)。

で、メンディングテープで貼り付けてみました。ホゾもなんにもないので隅をきちんと合わせるのが大変ですが、何とか組み上がりました。前述の通り断面の垂直が出ていないのですが、いい感じではないですか(自画自賛)。垂直が出ていないという意味では中学校の技術家庭で作った本棚から進歩はしていないのですが、揺るぎない直線とスキマのない四隅はまるでプロの作品のようです(自画自賛)。いやー、レーザー加工機って凄いですね。


とりあえず三鷹でプロトタイプを作って、うまくいったら図面をElecrowに送ってカットしてもらう、という流れでイケるかなぁ。

新しいPIR @秋月

PIRという素子が好きです。

焦電型赤外線センサーとか人感センサーと呼ばれているやつで、体温ぐらいの赤外線を発する物体が視野を横切ると検出してくれます。鳩撃退センサー、玄関先来客センサー、睡眠計、寝落ちスイッチ付き読書灯、などに使っています。

100円ぐらいから買えます。ただ、もっとも需要が多いのが防犯用と(夜住宅街を歩いていると急に明かりが点灯するのはコレね)いうこともあってか、大部分の製品は動きを検出した後に信号をラッチするものがほとんどです。「何か動いた」ことを検出するだけならそれでも良いんですが、「どのぐらいの頻度で動いているか」を検出したい場合、例えば睡眠計などに使うにはちょっと不都合なんですよね。

ほぼ唯一の例外だったのが、秋月で売ってるSE-10というタイプなのですが…「5-12v」と書いてあるにもかかわらず5v電源だと使っているうちに誤動作するという欠陥があります。内蔵しているレギュレータが5v出力なので、5vだと内部電圧が足りないんですよね。

さてどうしたもんか…と思っていたら、新しいのが出ました。
秋月のサイトから


仕様を見ると、検知時のみ出力してくれます。わーい。検知範囲は2mでちょっと狭いですけど、まぁそれはSE-10と同じ。消費電流もSE-10より少ないし、厚みも減るのでいろいろ組み込みやすいです。値段がもうちょっと…と思うけど、まぁ、そこは安くてラッチのついたやつとの使い分けで。

正月休みになる前に注文しておこうっと。

それにしても秋月さんは全角英数をいつになったらやめてくれるんかのぉ。

今年買ってよかったもの@電子工作

今年の結論としては 専用工具最強

何年か前にワイヤストリッパを買った時に、あまりの便利さに涙したものですが、特定の目的を達成するためだけに作られた道具というのはやっぱり良いものです。

■圧着工具1:JST/モレックスなど用■

モレックスは専用の圧着工具があるんですが、数万円します。なので使ったことありません。高いのにあまり評判良くないんですよね。

そういう殿様商売には必ずサードパーティがあるはず、とググって出てきたのがコレ。エンジニア PA-09 [精密圧着ペンチ]


圧着端子の幅ごとにいくつかスリットがあって(1.0, 1.4, 1.6, 1.8mm)、そこに端子を挟み、間に電線を突っ込んで握るだけのシンプルな道具ですが、失敗もないし、特に不満ありません。ヨドバシで3500円。

■圧着工具2:モジュラー用■

友達のTさんから特殊なケーブルを作って欲しいと頼まれて、当初はRJが両端についてたケーブルを買って切って使っていたのですが、RJ9は4芯の受話器用なので入手しやすいものはカールコード仕様のものばっかりです。ということで、ケーブルの切り売りをしてくれる業者から単芯0.5mm☓2Pのワイヤ、アマゾンからRJ9のプラグを入手して、あとはモジュラー用圧着工具が必要です。

ミヨシ ケーブル用加工工具 CAT-CP01 3980円

調べてみると、これがRJ9 〜 RJ45(4芯〜8芯)まで対応していてケーブルの切断、皮むき、圧着が一つでできてしまう優れもの。しかも3000円台。

私の若い頃は圧着工具なんて数万円がザラで(ry

ケーブルの切断刃と皮むき刃が並行してついているので、切断と皮むきが一発で出来ます。そのあとは、揃えた芯線をRJに差し込んで圧着するだけ。1分とかかりません。

今まで皮むきだけで3分ぐらいかかっていたと思います。

いやー、やっぱ専用工具最強ですね。0.5mmの太い単芯でがっちり圧着しているので、ちょっとやそっと引っ張っても外れません。いや当たり前ですが。

倉橋屋では特殊ケーブルの製作も受託しておりますので info@kurahashi-ya.com までご相談くださいw RJ9 - DSUB9ケーブルで1本2000円+送料です。

■ブレッドボード用ピン圧着端子■

ふつーのワイヤにこれを圧着すればブレッドボードに刺さります。ebayで送料込み100本137円でした。

圧着用ケーブルは極端に熱に弱いものが多いので、これを一旦取り付けて余分なところをちょん切ってからコネクタにはんだ付け、なんて使い方もできます。

■ジャンパワイヤ オスメス■

「40Pcs 20cm Good Male to Female Dupont Wire Jumper Cable for Arduino Breadboard」

ジャンパーワイヤがすだれのようにつながって売っているアレ。ebayで送料無料で135円。

ジャンパーワイヤとしては電線が中途半端に固くてあまり品質良くないのですが、とにかく安いので「すでにメスかオスが圧着された手頃な長さの電線」として愛用しています。電池ボックスにメス側を取り付けると、電池電圧がむき出しにならず安全簡単な電源として使えます。

なお、ビニール袋に入れたまま放置しているとケミカル臭がものすごいので、袋から出して2-3日陰干してから使いましょう(笑)。それでも臭いけどね。

■ヒーティングガン■

ヘアドライヤーみたいに熱風を送り出す道具です。


これでリフローしようと思って買ったのですが、試してみるとハンダが融ける前にペーストに乗せたESP-WROOM-02が見事に吹き飛んでいきました…。

それでしばらくは、ヒシチューブ / スミチューブの収縮作業ぐらいしか使っていなかったんですが、間違ってリフローした表面実装部品を取り外したくて困っていた時にGoogle+電子工作部の方から「周囲をカプトンテープで覆ってからヒーティングガンで温めると簡単」と教えていただきました。

試してみると、ほんとうに簡単。1分もかからずに部品がすっとんで行きます。ヒトサマに納品する品物には恐ろしくてできないですが、試作中のリカバリにはとても重宝しております。

あと、豆腐に当ててみたらいい感じで焦げ目ができましたが、良い子は真似してはいけませんが、よく寿司屋などで使われているカセットボンベを使ったバーナーよりも良い焦げ目で美味しいです。

■ヘッドマウントルーペ■

今年のベストバイです。ずっとまえから気になっていたんです。でも、見た目がヘンなのと本当に見えるのかどうかわからないので、躊躇していました。



買ってみたら…いやー、手元がよく見える見えるw いやですねー、老眼。でも、これがあればDRV8830でも何とか手ハンダできます。1608なんてデカすぎるレベルw

レンズ3枚セットですが、私の程度の老眼だと一番弱いレンズでも焦点距離10cmぐらいになってしまうので、近眼+乱視用の眼鏡の上からこれをかけて丁度いい感じです。

脱着が煩雑かと思っていたのですが、ルーペの視野はほぼ正面だけなので、ちょっと横目でメガネごしにMacの画面を見たりハンダゴテをコテ台に置いたりできるのであまり気になりません。プラスチックレンズですが、視野の中心部はそれなりにはっきり見えます。ただ、左右の眼で立体的にものが見えるようになるには少し慣れが必要でした。

とりあえずこれで満足しているのですが…下記のようなタイプも気になってはいます。ただでさえ怪しいルックスがさらに怪しくなりますが。ってか、商品写真なんとかしましょうよw



Amazonで買えば安いのでしょうけど、どこか試せるところはないですかね。あればそこで試して、よければ買います。

■そんな感じです■

ああ今年もAnalog Discoveryを買えなかった。

2016年12月18日日曜日

約1000円の鳩撃退電撃装置

■はじめに■

この装置は高電圧を取り扱います。感電死するほどの電流は流れないようになっていますが、驚いて怪我をしたり、火災につながるリスクは皆無ではありません。

電子回路について十分な知識のない方は、お試しにならないでください。

倉橋浩一は、この記事および記事に記載された電子回路等によって惹起されたいかなる事態についても責任を負いません。あくまでもご自身の責任により対処をお願いいたします。

なお、鳥獣保護法において他人に危害を及ぼさない自分の管理する敷地内での捕獲等は認められていますし、そもそも本装置は捕獲や殺傷を目的とするものではないので、対象外です。詳しくはお近くの警察署や自治体にお問い合わせください。

さて。

■鳩が、また来た■

エアコン配管等への粘着テープ設置で鳩は来なくなりました。

が。

その平和は半年しか続きませんでした。

■もう怒った(笑顔)■

ということで、彼らに痛い教訓を与えてやります。

でも、自分で高電圧を発生させるのは面倒なので、市販の蚊取りラケットを使用します。ホームんセンターなどではこの半額で入手できたりもするようですが、今回は週末のうちにケリをつけたかったので、Amazonで購入しました。脱力系ネーミングが素敵です。

当日配達、さっそくバラします。



ブロッキング発振回路とトランス昇圧で高電圧を発生し、ダイオードで半波整流してフィルムコンデンサに蓄電、という回路でした。電源は乾電池3本で3V。極性などを確認して配線を切断し、制御回路とつなげます。



制御回路は、PIRでMOSFETをスイッチして上記蚊取りラケットへ電源を供給するのですが、PIRを駆動するためにHT7750を使い、MOSFETを確実にスイッチするために電源はエネループ3本3.8Vを使っています。トランジスタは2SC1815, MOSFETはPchパワーMOSFET(55V11A) IRFU9024NPBFです。ものすごいオーバースペックですが、手持ちで低VgsなP-ch MOSがこれしかなかったので。でも、これが60円で買えるんだから今の時代は本当に恐ろしいです。コレクタをプルアップしているのは1KΩ、HT7750の入り口のコンデンサは100uFの電解、インダクタは安物の47uH、SBDは1S4、出力側コンデンサは積層セラミック47uFです。PIRはいつものこれを感度最高、時定数最短で使っています。見事にみんな秋月ですw



動作テストしましたが、適当な分圧抵抗のない状態で800v程度は観測できましたので、短絡抵抗のない状態では定格?通り1000v以上は軽く出ていると思われます。作動中にスチールウールをレール上に当ててみたところ、「バチッ」という音とともに一瞬で燃焼しました。

ひゃっはーー。

■設置■

ケースには、我が家の電子工作の標準筐体たるフィラデルフィアクリームチーズ容器を使います。片側にバターナイフを通す切り欠きが空いてますが、それと同じような切込みを反対側にもつけます。片方からPIR、反対側から高圧線が出ます。

配線というか電極には、鉄道模型のNゲージレールを使用しました。適当な間隔を保った絶縁平行電極としてはかなりリーズナブルじゃん!と思って買ったのですが…考えてみれば銅テープ貼っておけば良いんですよね。ちょっと勿体無いことをしました。

ただ、鉄道模型レールの精度は驚くほどで、レースの下、枕木との間にテグスをなんの支障もなく通すことができ、以前設置して1年以上放置してあったレールとも何の問題もなく接続することができました。うーむ。

あとは、配線し、最後に電池をつっこんで出来上がりです。

さて、どーなることやら。RPi用赤外線カメラを買ったばかりなので、鳩が踏んで驚くところをぜひ撮影したいのですが、今週末は時間切れ。まぁまたそのうちに。

■スイッチ追加■

電池が切れたら(近づいてもLEDが点灯しない)交換する…ということで特に電源スイッチは設けていなかったのですが、やっぱりそれはどうよ、ということで付けました。電池ボックスを蓋付きスイッチ付き電池ボックスに変えて、フィラデルフィアの外からスイッチを操作できるようにしただけですがw

ノギスで採寸しスコヤでケガキ。おお、買ったばかりの道具が活用されている!

…まぁ、それで長方形にならず平行四辺形ですらない四角形になってしまうのが私の工作レベルなんですけどねorz 今度から簡単なものをカットする場合でも、ちゃんとプリントアウトした型紙か方眼トレーシングペーパーを貼り付けてからカットします。不器用は不器用なりに工夫しないととととととととと。


固定するのは両面テープ、あとではがせるように3Mコマンドタブを使います。タブの部分をひっぱると跡もなくきれいに剥がせるのがウリ。まぁ壁紙とかだと一緒に剥がれちゃいますが。


これを電池ボックスに貼り付けて(カプトンで包まれているのは高圧回路)



フィラデルフィアフタ裏に固定して30秒間しっかり押さえておけばOK。



できあがりです。



…しまった防水性が下がった。

2016年12月1日木曜日

Eagleで文字位置がズレる / サイズが変わる

今まで問題なかったのですが、先週注文したもので、著しいズレが生じました。

Eagleの画面上こう見えているものが、


Gerberではこんな風にはみ出してしまいます。


Eagleはアップデートしていないので、Macのフォントに何か変更でもあったんだろうか…それとも単に今まで気付いていなかっただけなんだろか。

ググったら見つかりました。

てことで、Optionメニュー>User Interface...を選び、以下のウィンドウのMisc内にある「Always vector font」と「Persistent in this drawing」をチェックしてOKをクリックします。

上記の変更をしたら、途端にEagle画面もこうなりました。


ってことで、改めてEagleの上で位置を直して


Gerberを出力したら、めでたくEagle画面とGerberが一致しました。


Elecrowのlisaさん、お騒がせしてごめんなさい。サポートありがとうございました。

Lisa@Elecrow,
I'm very sorry for this trouble. It was because of my fault. Thank you for your nice support.

なお、Gerberの表示には下記のサービスを使いました。

Macで使えるViewerとしてはgerbvが有名ですが、何か使い方わかんないんですよね(恥)。どうもCAD系は苦手です。