goo blog サービス終了のお知らせ 

もんく [とある南端港街の住人になった人]

スペインかポルトガルの港町に住みたい
日本→インドネシア→台湾→マレーシア→日本
since Oct. 2004

チーチ3号改造計画 その24 (失敗談編)

2016-09-25 15:50:39 | ABCのAはArduinoのA
ここ数ヶ月やってきたチーチ3号改造計画、
ここに来て窮地に陥っている。
計画を根本から見直す事求められる事態に!

その理由は、ハードウェアでもソフトウェアでもなく、
電源の問題だ。

チーチ3号のバッテリーは単4電池3本。
それをそのまま使う事として考えて来たが、
それでは電流が足りないと判明。

一旦モーターを回すと数回で動きが鈍くなる。
mp3モジュールの電源投入直後の立ち上がりが遅い。

どうもArduinoや人感センサー、バイブレーションセンサーその他
スタンバイだけでかなりの電力を使ってしまっているらしい。

スケッチを一旦個々の動作用書き換えると
個々には動作する。
まとまると動きが途端に鈍くなる。
個々のデバイスのLEDの光が弱い。

と言うわけで、計画は根本から見直す事になった。
まさか、ヒモ付きに…?
それとももっと機能限定に?

チーチ3号改造計画 その23 (プログラム編1)

2016-09-18 22:45:03 | ABCのAはArduinoのA
プログラミングをやりながらハードも小変更。
もともと前足のところにあったスイッチを活用する事にした。

と言うのは、
トランジスタ駆動でモーターを動かす事にしたが、
動かす時間をどう調整して良いかが難しかったから。
このスイッチがあれば停止のタイミングがわかるはず。

このスイッチは無視するつもりだったけれど、
やっぱり使う事にした。

なのでスイッチはArduinoの内部プルアップを利用している。
そうすると抵抗を1個省略できる。



まだ、このスケッチはイイカゲン。
動かしてない。

Vo1〜VoX
は音声の再生時間の設定。
設定時間は適当。
数字を入れただけ。

人感センサーはデジタルセンサーだけれど
デジタルだとあまり上手く動かせなかったので
アナログセンサーとして使う。

なのでLevは擬似デジタル処理するための限界値。


setupのところでInitial Actionとして
電源ONで一度だけ動くように書いてあるけれど、
これはやっぱりloopの中に入れるべきかと思う。
後で変えよう。


音声の再生の前にnoInterruptsで割込み停止にしている。

調べたところ、割込みが終わるとloopの元のところに
戻るらしいけれど、音声が中段されるのも困るので
こうしてみた。



Vibration sensorは割込みで使うけれど、
割込みが入ると単にShkに1を入れるだけ。


最後の人感センサーのサブルーチンはちょっとおかしい。
この人感センサーは反応するたびにONからOFF、OFFからON。
だからONが必ず人の動きを感知した状態ではないから。
これは後で変更。

追記 9月19日
人感センサーの件、よく考えたらサブルーチンでは1か0かの判定をしているだけで、
他のところで前と違ったかを見ているからこれでも良いのかもしれない。
(自分で書いていて迷っている...)



チーチ3号改造計画 その22 (アセンブリ編)

2016-09-16 23:27:20 | ABCのAはArduinoのA
基礎試験が終わって各パーツが動かせるとわかった。
なので組み込んでみた。

(かなり久しぶりに猫型に戻った。ここまで長かった。)

前回は組み込みまで行って無かった人感センサー。
鼻に入れてみた。
レンズは黒に替えたので鼻らしく見えるはず。

鼻に人感センサーを入れたのと、
モーター制御用トランジスタなどが増えたので
お尻の空いているところに基板を入れる事にした。

基板の固定はモーターのシャフトと底パーツの凹凸だけ。
ネジを使わなくても良さそうなのでこのまま。

基板にパーツを実装してみた。

けっこうイイカゲンにやったが、ちゃんと収まる。

回路図はこんな感じ。
間違ってたら教えて。


今日はマレーシア・デー。
テロが怖いのでお祭り騒ぎには参加しなけど、
盛大にやったのかなあ?

それとは無関係に、こっちは…
すし金(マレーシアの回転寿司チェーン)で
ソフトシェルクラブの天ぷらだー!

チーチ3号改造計画 その21 (モータードライブ編)

2016-09-12 16:12:47 | ABCのAはArduinoのA
チーチ3号、足で動くためにモーターとギヤが付いている。
が、当初、モーターの制御はあきらめていた。
が、(再度"が") 一番簡単な方法でON-OFFする事にした。

最初に入門セットを買った時にモータードライバーICが1個入っていた。
だからそれを使っても良かったのだけれど、
ここは1つ、普通にトランジスターを使ってみる。

それが上の写真。
が、(また"が") やってみると動かない。
Device Plusに書いてある通りにやったつもなのに。

いや、書いてある通りにはやってない。
書いてあるのと同じトランジスターなど持ってない。
だから2回目にまとめてテキトーに買ったパーツ、
その中からさらにテキトーなトランジスターに替えた。


それからダイオードもちょっと違う。
まあ、ダイオードは多少違っても大丈夫として、
決定的に違ったのはこれ。

ピンの配置が違ってた。コレクターとベースが反対だった。
皆同じかと思ってたらそうでも無いらしい。

それを直してみると…


ちゃんと動いた。

これで懸念点はトランジスターの電流。
800mAしか流せないのでONになった瞬間の電流が足りないかも知れない。
まあ、その時はその時で…

チーチ3号改造計画 その20 (DFPlayer編)

2016-09-11 15:15:46 | ABCのAはArduinoのA
新しいMP3プレーヤーモジュール、DFPlayerを試す。

結果から言うと、ちゃんと音が出た。
前のWTV020SDと比べるとこっちの方が100倍も簡単。

まず、音源ファイルが普通のMP3で良い。
SDカードにmp3と言うフォルダを作る。
その中に"0001 XXX.mp3"のような名前で音声ファイルを入れる。
XXXは適当なアルファベットでOK。
0001の後は0002、0003と続けておく。

再生するファイルをプログラム内で指定する時は
0001、0002…でなくて1、2で良い。

ライブラリに付属の簡単なプログラムでやってみる。


delay(30000) は音と音の間の空白じゃなくて
音を再生している時間だと思えば良いらしい。
ここでは30000だから30秒間音が出る。

いずれにせよ、WTV020SDは買うだけ損なので
こっちを選ぶべきだ。

チーチ3号改造計画 その19 (人感&振動センサー編)

2016-09-10 20:31:12 | ABCのAはArduinoのA
昨日来たセンサーがどんな風に使えるか予備試験。

人感センサー、センサーの配置が基板中央から
端に移動しただけのバージョンかと思いきや……
それだけじゃなかった。


このセンサー、デジタル出力だと言ってたので
最初は普通にデジタル入力のプログラムを書いてテスト。

前に壊した人感センサーだったらプログラム無しでも
LEDが光ったからそんな必要も無かったのだけれど、
これにはLEDが付いていない。
だからUNOにつないで試験するしかない。

結果は、時々しか反応しない。
不良品!と思って
3個ともテスト。
全部同じ。
やっぱり中国製ハズレ?

が、一応どんな出力が出ているかアナログ入力で確認。



結果は…


ちゃんと反応している!
UNOは何ボルトからHIGHなんだっけ?
計算上センサーからは3.4V出ているからデジタル出力のはずなんだけれど???

まあ、とりあえず、どうにかすれば使える事がわかった。
(ふ〜)

次に振動センサーのテスト。
前の、と言うよりチーチ3号に取り付けてあるヤツは
振動(ショック)を感知すると数秒間ONになり続けてくれたと
思った?(確か)

これはどう?



振動するたびにHIGHが出る。

ちょっと忙しいセンサーだった。
って事は、短期間に振動を感知しないと意味がない。

やっぱり割込み処理が必要そうだ。
もっとも、前のタイプも割込みでやってたから乗せ変えるだけで良さそう。

続く。





マレーシアはこれからハジのお祭り。
犠牲祭と言って牛や羊をモスクなどで解体する行事。
今日休んだから自分は3連休って事になる。

ハジについては去年のブログ、その前の年のを見てみて下さい。
ちなみにイスラム暦だから日は同じじゃないです。
一見の価値ありです。

チーチ3号改造計画 その18 (中国通販編5)

2016-09-09 23:59:59 | ABCのAはArduinoのA
いろいろ来ました。

これで滞っていたチーチ3号計画再開できそうだ。


今日はいろいろ物が届いた。
LenovoのTab3 8インチモデル、LTE対応、ストレージ16GB。
これは会社でマレーシアの通販Lazadaで買ってもらった。
RM699 (17800円)。
これは現場の作業員に持たせるための物。

トラブルがあったり連絡が必要な時、写真を送ったりしたい時に使う。
会社のネットワークにつなげるとセキュリティーの問題になるし、
こちらが家にいる時に情報を転送するのも難しい。
だから独立した端末をインターネットにつなげる。
そして作業員は自分の通信料金を仕事に使わなくて済む。


もう1つは本。
日本のアマゾンで注文したちょっとした専門分野の入門編。
入門編とは言え大学の先生の研究の成果なので内容は高度。
いろいろな事が数式を使って説明してある。
まあ、最初はわからないけれど、概要がわかれば良いかと…

チーチ3号改造計画 その17 (中国通販編4)

2016-08-29 19:00:53 | ABCのAはArduinoのA
やっぱりマレーシアには良さそうなパーツが無い。
なのでまた中国からの通販にした。

昨日失敗した人感センサーは基板の端にセンサーが付いているのに変更。
これなら改造しなくて済むかもしれない。
前回より1個多い3個買った。

なぜ最初からこちらを選ばなかったかと言うと、
キャップの黒いのが無かったから。
キャップ(レンズ?)が白しかないが、壊れたのから持ってきて黒にしよう。

振動センサーも2個買った。
今使っている振動センサーはたまに感度が良く無い。
なのでもっと感度の良いのにしてみる。
多分、金属の玉が筒に入っているタイプでモジュールを構成している。

あとは、ダイオードをあまり買っていなかったので一般的なセットを買った。
4148が入っているのでけっこう普通の用途に使えるらしい。
秋月のサイトにそう書いてあった。
考えても知らないものは知らないので単に買う。

ワイヤーのセットは半田付けの時に別に買うのが面倒なので
プロト用のジャンパーワイヤーを壊して使ってしまったから補充。
いろいろな色の電線を個別に買っているとけっこう高いわけだし。


今回は1つのショップで全部揃えたから一緒に全部送られてくるはず。
2週間程度?


ところで、中国通販、けっこう最強じゃないかなと思う。
前にも言ったけれど、たいていの物は中国で作っているわけだし送料も安い。
昔みたいに振り込んで逃げられる事もそう多くは無さそう。
楽天とかAmazonともう同じように世界でやっている大手企業の通販て事になるから
クレジットカード使ってもそれほど心配は要らないのかも知れない。

でも念のためプリペイド式クレジットカードにしている。
念のためと言うのは中国だから特別ではなくて
マレーシアでの買い物も同じ。
マレーシアもカード詐欺があるから危険なのだ。

チーチ3号改造計画 その16 (人感センサー編)

2016-08-28 19:22:23 | ABCのAはArduinoのA
今日は大失敗の日になってしまった。

中国から2個買っておいた人感センサー、2個とも壊してしまった。
なぜ壊したかと言うと、写真のように改造を試みたから。

つまり、センサーをモジュールの基板から剥がして別体にしようとしたために、
多分、基板の銅箔が剥がれて導通ができなくなったのだと思う。
もともと一度半田付けした物を剥がすなんてすべき事でもないのだけれど、
モジュールのままではチーチ3号のどこにも組み込めない。

だからセンサーの足3本の半田を温めてハンダ吸い取り機で吸って剥がしてみた。
センサー自体は何とか剥がれるのだけれど、
それとともに基板の銅箔が剥がれてしまう。
そこにピンを立ててみたけれど動いてしまった。
剥がれた部分の近くのコーティングを少し削ってその部分に半田付けしても
上手くついたように見えて動作不良になってしまった。

なので今日はそこで諦める事にした。
今度はもっと使い易い人感センサーを買う事にしよう。
マレーシアで買えるか、また中国かわからないが。


それと、次のセンサーを待つ間にMP3モジュールの方に取り掛かろう。

チーチ3号改造計画 その14 (中国通販編 2)(資料追加)

2016-08-16 14:05:15 | ABCのAはArduinoのA
今日、人感センサーが中国から届いた。

注文後、約2週間。
ショッピングサイトに書いてあったよりはずっと早い到着。
中身も間違ってない。

それにしても、中国のこの安い郵送料金、別納だから額は書かれていなかったけれど、
中国の小口通販を後押ししているなあ。

日本の国際郵便だと一番安いので130円だからこの商品の額面の半額にもなってしまう。
うーん、今から通販サイト立ち上げるなら中国に開業するのが良いかもしれない。
(郵送料だけ考えての事だけれど。)
この意味だけでもチャイナフリーで生活するのは絶対に無理だな。


さて、もう1つ頼んであるMP3モジュールももうすぐ到着するだろう。
ほぼ同時に発送となっていたから。




最近、仕事で必要な機械などをネットで探している。
ネットで探すにしても、機械関係はサポートやらスペアパーツが必要なので
マレーシアにサプライヤがある、それにスペアパーツがある事が望ましい。

けれど、検索すると中国の物がたくさん引っかかる。
(検索条件で特定地域に限るようにはしていない。)
もちろんマレーシアでは作っている物が限られているから仕方ない。
日本のはどうかと言うと、日本語で検索するとやっと出てくる。
台湾は無い事もないけれど、少ししかない。
韓国はほとんど影が薄い。

要は80%以上が中国だ。
しかもAlibabaが多い。
これは今の現代社会に起きている事の象徴なんだろうか。

そして値段がメチャ安い。
物によっては日本で買うのと比べると1/10だったり。
(トータルに考えてそれで買うと決めるかは別だけれど。)


中国の経済があまり良くないように報道されているけれど、
すごいきつい上り坂がちょっと緩めになっただけで上りは上りなのかなと。
緩くなっても日本なんかよりはまだまだ急坂を上っているのかなと。

いろいろ見ていると、日本のように商流なんかあまり気にしないで
物があればどこにでも、売ってくれる誰にでも卸していて
けっこう自由にやっているようだ。

全く同じ物が同じショッピングサイトで売られていて
しかも値段が違っていても誰も気にしないらしい。
そして毎日のように値段が下がったよとメールで通知してきたりする。
サイトの横に小さいチャット欄があって担当者が英語でいろいろ勧めてくる。
そんなこんなで世界中に小さな物1個づつでも売っている。
日本でだったら絶対やって行けないだろう。
商売のやり方がホントに軽いなあと、ちょっと羨ましくもあり。


それで、マレーシアの商売人は何をやているかと言うと、
中国から買えそうな物をネットで探して来て自社サイトに載せる。
売れたら中国に連絡してお客のところに持っていく。
だから困るのは、先に言ったようにパーツも無いしサポートもできないのが多い。
買い時はそこを見分けないといけない。
簡単な物なら買えると言う事だけど。

雑談、雑談。



資料追加






このデバイスの資料はネット上でほとんど見つからない。
日本でもマレーシアでもまだ売られていないらしい。

そこで回路図を基に確認。
XC6206-332MR(実際はXC6206P-332MR)は降圧のために使われているレギュレータだった。

つまりDC5Vを3.3Vにしてセンサーに供給している。
と言う事はモジュールへ供給する電源電圧は5V。
出力はデジタル5V。

つまりArduinoで使いやすいように設計されている。
実際にやってみると約2mの範囲内の人間の動きを感知している。
(猫では未確認)

人が動かない時は5V(HIGH)、人が動くと0V(LOW)が約10秒間続く。

感度調整やLOW継続時間の調整は無い。
無いけれど、Arduinoで常時変化をアナログ値でモニターするような使い方するのは
稀だからこれで問題無いと思う。

チーチ3号改造計画 その13 (中国通販編 1)

2016-08-02 13:51:43 | ABCのAはArduinoのA
今回は中国からのダイレクト通販でパーツを買ってみた。

買ったのは、欠陥品WTV020SDに代わるDFPlayerと言うMP3モジュール。
もう1つは小型の焦電型人感センサー。

DFPlayerはマレーシアで買うと、あまり売っていない事もあってけっこう高い。
4倍位の値段になる。
それが中国ダイレクトだとUSD1.9、マレーシアリンギでRM7.7。
しかも送料込み。ビックリ。で2個買った。

これ、欠陥WTV020と同じ大きさ、しかもスピーカーを直接繋ぐ事ができる。
それと、欠陥WTVのように変なファイル形式に変換しなくても良い。

DFPlayermini SKU:DFR0299

人感センサーは小型の物がマレーシアでは無いし、レンズが黒と言うのも無い。
これもUSD1.66、RM6.72で送料込み。これも2個買ってみた。

全部でRM28.8、日本円で728円。
欠点は来るまでに1ヶ月弱かかる事。
9月にならないと来ないかもしれない。

中国からの通販はちょっと不安ではあるけれども、
みんなが知っている大手EC会社だし、届かないと全額返金らしい。
それに使ったクレジットカードはプリペイド式。

楽しみ楽しみ…

チーチ3号改造計画 その13 (WTV020SD オーディオモジュール編6)

2016-07-30 23:59:59 | ABCのAはArduinoのA
さて、前回7月27日の「連続再生できるけど音量が小さい」問題への解決策です。

どうしたかと言うと…
ある音楽CDから3分ほど切り出したwavファイルを
サンプリングレートだけ32000Hzにし、ステレオからモノラルに変更。

ただ、絶対に必要と言われる音量制限はしなかった。
通説の逆張りなのだけれど、音量制限無しでも連続再生はできた。
音量もスピーカーにフィルター回路無しだった時と同じになった。

が、別の問題は残った。
音量が最初は普通に大きいけれど、少しした後に小さくなり、その後また大きくなる。


…誰も言わないからこの際ハッキリ言ってしまいたい。
このWTV020SDオーディオモジュールってのは
欠陥品に違い無い。

設計ミスだ!
これ作ったヤツはアホだ!

と言うわけで、2個も買っちゃったけど、WTV020SDを使うのはあきらめる事にした。
別のを探そう。

チーチ3号改造計画 その12 (WTV020SD オーディオモジュール編5)

2016-07-27 21:40:32 | ABCのAはArduinoのA
音が1〜2秒しか再生できない理由がちょっと解明されたと思う。

ヒントになったのは前回の記事で紹介した英語の記事。
1. メーカーのエンジニアが8Ωのスピーカーより高インピーダンスを勧めた事。
2. ある人がアンプに繋げたら再生できるようになったと書いてあった事。

このモジュール、と言うより使っているICの仕様では
直接スピーカーに繋げて良い事になっているけれど、
アンプに繋げても良い事になっている。

でも、良く考えると、アンプに繋げるのとスピーカーでは仕様的に逆と言える。
スピーカーはローインピーダンス、アンプはハイインピーダンス。
で、スピーカーに繋げると電流を食い過ぎてしまうのかも知れない。

ICの中で電流が足りなくなってエラーが起きるのじゃないだろうか。
そう考えれば音声ファイルの音量が大きすぎると落ちる現象も説明できるのでは?

それで、参考にさせてもらったのはこちらのページ。
音声合成LSIでイヤホンを鳴らすときの回路(アンプ不要)

音声合成LSIに直接イヤホンを繋ぐやり方。

と、これをやるとファイルの音声がちゃんと全部最後まで再生される。

メデタシ、メデタシ…とは行かない理由がある。

音が小さすぎてしまうのだ。
と言うわけで、この回路のまま使う事ができない。

アンプ・モジュールを買うか…
それとも…

つづく

チーチ3号改造計画 その11.1 (WTV020SD オーディオモジュール編4.1)

2016-07-25 22:15:35 | ABCのAはArduinoのA
前の記事でやってみると言った16Ωのスピーカーと10Ωの抵抗器。
ダメだった。
やはり再生は1秒かそこらで終了してしまう。

ここらで考えを改めて別の事をやるべきか?

例えば、WTV020SDをMP3モードで使う方法を考えるとか。
MP3モードではスイッチを付けてマニュアルで動かすわけだけど、
そのスイッチだって単にON-OFF。
つまり電圧が高いか低いかだけだからもしかしたら何とかなるのでは?

ちょっと良く考えよう。

チーチ3号改造計画 その11 (WTV020SD オーディオモジュール編4) (追記)

2016-07-25 13:48:04 | ABCのAはArduinoのA
WTV020SDもチーチ3号に組み込んでやってみる。
音が1秒か2秒で途切れる。
やっぱりダメ。

ちなみにwebサイトからダウンロードした音声ファイルでやっても同じ。
自分で録音した音が悪いわけじゃなさそう。



適当に音声とLEDの制御を組み合わせてみたスケッチがこれ。
基本的にはUNOを使ってWTV020SD単体テストしたスケッチをLEDのものに入れただけ。

通常はぼんやり点滅、
ノックセンサーがノックを感じると音(ファイル0018番)の再生が始まる。
ぼんやり点滅から交互点滅になって、その後両目点滅に変わる。
そしてもとのぼんやりに戻る。




と、まあその前に、もう1度、WTV020SDについて復習してみた。

新たに見つけたサイト。
Using the Sparkfun Audio-Sound Breakout – WTV020SD

下の方にコマンドの解説が出ている。

・void reset(): リセットしてチップが使用状態になる(setup()のところで使用)
・void playVoice(音声ファイル番号): 同期再生(synchronously plays)。同期の意味?
・void asyncPlayVoice(int voiceNumber) : 非同期再生(asynchronously)。スケッチのプログラムに邪魔されず終わりまで音を流し続けられる。再生中に他の事ができる。
・void stopVoice(): 非同期再生中の音を止められる。
・void pauseVoice(): 再生中の音声の中断ができる。2回目にこの命令を呼び出すと止めたところから再生が始まる。
・void mute(): 非同期再生中に音を無くすことができる。再生は継続する。
・void unmute(): 上記無音を解除する。


本家のフォーラムに出ていたサンプルスケッチには2秒間再生するとか書いてあったけれど、
2秒を指定するところも無いし、いったいどう言う事なのだろう?
単体試験の時は確かにasyncPlayVoiceで継続的に再生できた事もあった。
コマンド自体はそれほど難しくもないけれど、未だよくわからず。

ところで、このページの下にこの人が改良して音量調整ができるようになったライブラリーがあるけれど、これを使うと上手くいかなくなるので使用中止。


もう1つは個人のwiki。
matthew-morris.com-WTV020SD-16P

下のところに気になる事が書いてある。
Output Load Sensitivity (出力の負荷に敏感)

簡単にはこんな事が書いてある。

ある人がアンプに繋いで再生したらちゃんと最後まで再生されたけれど、その42ΩのスピーカーをWTVに直接繋いだら音が途中で切れた。

電源回路に10μFと0.1μFのコンデンサを繋いだり取ったりして状況を確認した。それとBUSYのラインのLEDを取ったりいろいろやったけど、結局どうすると再生してどうすると再生しないのかよくわからなかった。

とにかく、電源入力、出力の負荷(スピーカー)、Busyのラインに敏感に反応してしまうらしい。


同じページのちょっと上に戻って、その出力の負荷を言っているところ。
Direct Speaker Connection (スピーカーを直接接続する場合)

WTVのデータシートでは 8Ω、16Ω、32Ω 0.25Wのスピーカーに対応しているとなっている。

でも、メーカーの技術の人がフォーラムで言った内容は、

“Speaker: 8 ohm 1W (Not recommended)”
「8Ωのはお勧めしないよ。」


でも他の人はもっと良い8Ω3Wのスピーカーで問題なくできている人もいるらしい。


たぶん、チーチ3号のオリジナルスピーカーは8Ω0.25Wだと思う。
書いてないけどそう思うのは、全く外観が同じスピーカーが通販に出ていて
それが8Ω0.25Wになっていたから。

もしチーチ3号スピーカーがそれだとしたら、
音が途切れる原因はスピーカーの負荷かも知れない。

と、同じ28mm径で収まりの良いスピーカーが探せるか?
と言う問題はけっこう難しいので困る。
なのでとりあえず、冒頭の写真にある10Ωの抵抗器を
スピーカーと直列に繋いでテストしてみるつもり。

結果はまた後で。


追記
これが入手できたので試してみる事にした。