2022年8月30日火曜日

BALA-C(バランスカー 倒立振子)をDabble・Blynk IoTでコントロール

前回の「100円Shopの時計を使ったマーブルマシン」を考案された
n_shinichiさんのblogには、色々と興味深い作品があります。
以前から作って見たかった倒立振子・・・
さらに以前からやってみたかった、スマホでのコントロール。
真似をしてやってみたくなり、挑戦してみました。

こちらは立っている様子とDabbleでコントロールの様子です。

こちらはBlynk IoTでコントロールの様子です。

走らせるときはフエルトを下に敷いています。
板の上では滑りやすく、こけやすいです。

最初にn_shinichiさんと同じように、
M5stickc plusと360°連続回転サーボFS90Rを購入したものの、
にっちもさっちも行かず、
このキットを買ってみることにしました。
ところがこのキットは製造中止のため、
なかなか販売されてるお店が見つからず、
なんとか1店舗だけ在庫があり、購入することが出来ました。

キットの中にはM5stickc等、必要な全ての部品が入っています。
組み立ても10分程度で、
こちらのプログラムをM5stickcに書き込むだけで動くようになりました。

ただ、プログラムの中を見てもさっぱりわからず・・・(^^;
M5stickcは
3軸加速度センサと3軸ジャイロセンサの6軸センサが搭載されていて、
加速度(ax/ay/az)・角速度(角速度gx/gy/gz)の
値を読み取って、PID制御されているそうですが、
全くわかりません(-"-;

それでも、とにかくスマホでコントロールできるようにしたい!
と思って、プログラムのわかりやすいところだけ書き換えてみました。
(M5stickcにはESP32も搭載されていてWi-FiとBluetoothが使えます。)

私がやったのは、
①「Dabble」・「Blynk IoT」というアプリを使って
スマホとM5stickcを接続し、
スマホからコントロールできるようにした。
(「Dabble」はBluetooth接続・「Blynk IoT」はWifi接続)

②顔が出てくるようにした。
だけでで、お恥ずかしい限りです(^^;

参考にさせて頂いたサイトは

顔の描画はn_shinichiさんのスケッチを参考にしながら、
四角い顔をま~るい顔にしてみました。




<「Dabble」について>
DabbleはBluetooth接続のみでWiFi接続は出来ないようです。
スマホの画面もいくつかパターンがあって、
自分ではカスタマイズ出来ないようです。
私が使ったのはこのjoystickの画面です。

使い方は、上で記載した、n_shinichiさんの
これを見ればわかりやすいです。

<Blynk IoTについて>
Blynkは最近、新バ-ジョンになったらしく、Wi-Fi接続しかできません。
当初、このアプリの使い方が全くわからず、
こちらのマニュアルを見ながら進めていきました。

マニュアルにもあるように
まずパソコンを使って「Quickstart」から始めるのが良さそうです。

Which hardware are you using?
のところは私はM5stickcなので「ESP32」を選択
arduinoを選択



WiFi Network Name(SSID)・Passwordを入力
ここはモバイルルーターやスマホテザリングでもうまくいきました。
2か所入力してから、同じ画面の上の方のCopy code・Download As Fileで
プログラムをarduinoに入れて、デバイス(今回私の場合はM5stick)に書き込みます。
書き込んでから右下のNextを押すと

この画面が出てきて、OKならすぐに繋がります。

この後は
Datastreamsでデータの型を設定(スマホからでも出来ます)

画面の配置を設定
(スマホのDeveloper Mode~template選択~右上の+をクリック)

最後に、配置したパーツにデータを紐付けます。

こちらが私が配置した画面です。

電圧・傾きのところはM5Stickcのデータをスマホへ送り
逆にスマホのjoystickのx,yのデータはM5Stickcへ送ってます。

実はM5stickc~Blynk IoTの接続がうまくいって数日後、
パソコントラブルが起きて、
数日かけて作ったarduinoのデータが消えてしまいました。
また1から・・・と思ってやってみましたが
プログラムをarduinoに書き込んでもうまくいかない・・・
調べてみると Blynk.begin(auth, ssid, pass);  で止まってしまってるようです。
(書き込みでエラーは出ませんでした。)
BlynkのIDを変えてもダメで、
数日後、別のネットワーク(スマホ テザリング)
で繋いだところうまくいくようになって、ほっとしました(^^♪
最初に設定していたssid, passがうまく通ってなかったのでしょうね。
登録していないssid・passやauthを使っても、途中で止まるのかしらね・・・

プログラムにはこの6行が必要みたいです。
(QuickstartでDLしたファイルに書かれているものと同じものでOKです。)
#define BLYNK_TEMPLATE_ID           "********"
#define BLYNK_DEVICE_NAME           "********"
#define BLYNK_AUTH_TOKEN            "****************"

char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "********";
char pass[] = "********";


2022年7月29日金曜日

100円Shopの時計を使ったマーブルマシン

久しぶりの新作ですヽ(^-^)/

最近、blogで知り合った、n_shinichiさんのblog・・・
この方の作品、見れば見るほど、凄いです!
工作もプログラミングもアイデアも・・・!!

参考にさせて頂きたい作品が満載ですが、
取りあえず、100円Shopの時計を使ったマーブルマシン
に挑戦させて頂きました。

私も今まで何度か100均の時計を使った工作をやりましたが、
この秒針はかなり非力です。
これでマーブルマシンを作って、ballを持ち上げられるの?
なんて半信半疑でしたが、
うまくいくと楽しいものですね~♪


<作成手順>
まずは100円Shopの時計を引っ張り出してきて
(以前、キャンドゥで購入したものです。)

時計を取り出し、秒針の青丸の部分を外します。

これが3Dプリンターで作成したパーツです。

かごを6つ取り付けた回転体に
秒針から取り出した青丸のパーツを取り付けました。

レールはダイソーで購入したφ2.1mmのアルミワイヤーで作成。
レールの留め具もshinichiさんがblogに掲載されていたものを参考に作成しました。
色々といいお勉強になります♪

回転体を秒針のところに差し込み、
BB弾(φ6mm)を3つ乗せたところです。
かごの内径は7mm、外径は9mm、
回転体の中心からかごの中心までは15mmです。

時計と一体化するとこんな感じです。

回転体が1周回るのに1分かかり、
その1分の間に6球が転がる仕組みです。

早速動かしてみたところ、
すぐにBB弾がレールから落下・・・
レールの修正を何度か繰り返し、
なんとか1時間程度は落下せずにうまく転がっても、
何かのタイミングで落下してしまう😢
同じようにBB弾が転がっているように見えても
毎回、微妙に違ったルートをたどっているのでしょうね。

試行錯誤しながら、修正を繰り返し、
数台作ってみたりもしましたが、
やはり私の壁は1時間少々・・・
まぁ、こんなもんかな?
と半分あきらめ境地でしたが、
今朝(2022年7月29日)8時半に、上の映像の2台を改めてセットしてお出かけ・・・
14時に帰宅したところ、
なんと!! 2台ともに1球も落下せずに、うまく動いてる!
めっちゃ嬉しい~♪
このままどこまで落ちずに転がり続けてくれるのか?
見守りたいと思います。

~~~~~
今朝(2022年7月29日)の挑戦から12時間経ちましたが
まだ落下せずに動き続けています。
昨日までの1時間の壁は何だったんだろう・・・

昨日までとの違いは、
それぞれの装置の下に木製の板を接着剤でくっつけたこと!
これだけで、こんなにも違うものかしら?
と不思議に思うのですが、とにかく嬉しい~♪

~~~~~

ちなみにガラス球・鉄球(どちらもφ6mm)もやってみましたが
ガラス球は1個ならOK、鉄球は1個でも回りませんでした。
ここでBB弾を使うアイデアもshinichiさんの真似ですが、
本当に素晴らしいですね♪


2022年7月11日月曜日

毎日放送で工作品が紹介されました

私事で申し訳ありません。
長らく新作をアップ出来ておりませんが、
今年(2022年) 5月に引っ越しをしました。
引越しと言っても、同じ兵庫県姫路市内です。
引っ越し前はマンションに住んでいたのですが、
工作の完成品や材料・道具などが増えて、
足の踏み場どころか寝る場所もなくなってしまい、
少し広い一軒家に引っ越しをしました。

引越して12日後、毎日放送の関係者からメールを頂き
工作品等の取材に来て頂くことになりました。

引っ越し前の家の中はゴジャゴジャで
とても取材なんて無理でしたが、
ちょうどいいタイミングで引っ越して、本当に良かったです。

6月に取材を終え、
7月9日 16時からテレビで放送されました。
私にとって初のテレビ出演で、
ハラハラドキドキでしたが、
うまく編集して頂きました。

7月16日からYoutubeで見れるようになりました。

宜しくお願いします。

こちらが2階の廊下に展示した工作品です。

長さ1.8mの長机4台と約0.9mの机2台
全長約9mに工作品を並べました。



2021年10月24日日曜日

ガイコツの「チューチュートレイン」

昨年のハロウィン前、
FBFの片山さんが作られたこちらの作品に魅せられ、
私も真似して作ってみることに・・・

こちらが私の作ったものです。
なかなか片山さんのようにはいきませんが、
それなりに動いてるでしょうか・・・(^^;

実は昨年、片山さんの作品を見たあと、
このガイコツを求めて10数軒のダイソーを探し回ったのですが、
全く見当たらず・・・
今年は5軒回って、うち2軒で購入することができました。
これがそのガイコツ!4体入って110円です。

ガイコツは関節を作らないといけません。
下写真(右)のようにバラバラにして

穴を開けてポリウレタン線でつないでいきました。
ゴムのように伸びる線で
Amazonで「水晶の線」で検索すると出てきますが、
ポリウレタン線じゃなく普通の糸でもいいかも知れません。

関節をつないだところです。

背中には棒を1本固定しました。

土台部分は3Dプリンターで作りました。
1つ黒いギアが混じっていますが、仕様を変更する前のもので、
最終的には使いませんでした。

土台を組み立てたところです。

ガイコツを立たせました。
90度ずつずれています。

板に固定しました。
電源はモバイルバッテリー(5V)で動かしています。



2021年10月7日木曜日

一眼レフカメラに人感センサーをつないで自動撮影

先日、とある方からの依頼で
一眼レフカメラに人感センサーをつないで自動撮影する装置に挑戦してみました。

依頼者の方が購入された人感センサーHC-SR501が
たまたま手元にあったので、色々と試行錯誤・・・
ただ私は一眼レフカメラを持っておらず、
カメラに詳しい大阪の小西さん、矢野さんにも助けられながら
なんとかセンサーに反応してシャッターオンになる装置を組むことが出来ました。
小西さん、矢野さん、ありがとうございました♪

この映像は、
人感センサーに反応し一眼レフカメラーのシャッターが
切られるイメージをLEDで表現したものです。

こちらは実際に依頼者の方のカメラでうまくシャッターが切れるか試したものです。


~~~~~~~~~~~~~~~~
一眼レフカメラには「リモート端子」なるものがあり
(私はそれすら知らず・・・(^^;)
端子に差し込むケーブルは3本で、
半押し(下写真の白線)・全押し(赤線)・Ground(網組銅線)
この写真は、依頼者の方から頂いたものです。

また小西さんから、このサイトが参考になるのでは?と教えて頂き、
回路・プログラム共に参考にさせて頂きました。

<回路>

<プログラム>
プログラムも上記サイトのものを参考にさせていただきました。

センサーが動物に反応すると、
センサーのout端子(上記の黄線)から10番pinに入力がありLEDが点灯します。
LEDはセンサーがオンの間、点灯します。
センサーが反応すると同時に、カメラシャッターが1秒間半押し(焦点調整)
その後、4秒間全押し(その間は連写)
といった仕組みです。

カメラのリモートレリーズは電圧をかけて反応させているわけではなく、
白線と網組銅線がショートすれば、シャッター半押しとなり、
赤線と網組銅線がショートすれば、シャッター全押しとなる仕組みのようです。

上の回路にすれば、カメラに電圧をかけることなく
各線をショートさせることが出来ました。

~~~~~~~~~~~~~
上の方の動画ではシャッターが切られるイメージをLEDで表現するために、
TLP785の4番ピンを基盤のGNDに接続しています。
ただ4番ピンを基盤のGNDに接続したままだと、
カメラに電圧がかかってしまうと思います。
~~~~~~~~~~~~~

<人感センサーHC-SR501のモジュールピン>
この方の説明がわかりやすいと思いました。

センサーの裏側を上に向け、ボリューム2個を手前に置いたときの
左側のボリュームが感度(左が反応距離が短い)
右側のボリュームが保持時間(左が保持時間が短い)

右ボリューム一番左の状態(保持時間短い)で
ジャンパーピンを奥の2本に付け替えると、
出力リピートが出来るそうです。
(実際やってみたけど、リピートしてくれない。やり方悪いかも?)
ただリピート無でも、動きがあれば再検知はしてくれました。

~~~~~~~~~~~~~
その他気付いた点は(私のやり方が悪いのかも知れませんが)

①
スイッチを入れてから約1分間はセンサーの反応が悪い。

②
動画のように手をかざしてセンサーチェックしたが、
一度センサーが反応しオフになった直後は、
すぐには反応せず、2~3秒遅れて反応する。
センサーがオフになってから3秒程度たってから
手をかざすとすぐに反応する。
(動画はすぐに反応するように、オフになってからしばらく待っている)

↑↑↑↑↑↑↑
この件について、Mukujiiさんがコメントを下さりました。
①
センサー内部にキャパシタンスがあり、
電源投入時は、それが充電できるまで信号を検出できません。
したがって、電源を入れて40sec~60secくらいは反応できません。

②
このモジュールの性能として、
検出後、次の検出までの待機時間が約2secとなっています。
そのため一度センサーが反応してオフになった直後は、
2secほど遅れてから反応します。

とのことです。
Mukujiiさん、いつも色々と教えて下さって、ありがとうございます。
~~~~~~~~~~~~~

とりあえず人に反応して、シャッターを切ることは出来ましたが
なんとか使い物になることを祈るばかりです。

~~~~~~~~~~~~~
<2021年10月8日追記>
小西さんから、アクションカメラのリモコンスイッチに
今回作った装置を繋げばアクションカメラでも使えるのでは?
との貴重なご意見を頂き、試してみたところうまく撮影できました。
小西さん、ありがとうございます。

動画は取りあえず静止画で実験しています。
シャッターオンで5枚連写設定(カメラ側での設定)です。
マイコンはスイッチオンで0.5秒オンです。
動画の方はリモコンスイッチを1回押すとスタート、
もう1回押すとSTOPのような仕組みなので、
マイコンで録画時間の設定をしないと、動画が切れ切れになりそうな気がします。


プログラムはこちら

今度は外で動物に反応して撮影できるのか?
試してみたいと思います。