見出し画像

UiFlowでSG90を動かす

こんばんは、かーでぃです。
技術書典にチェアリング本「大自然の中心でコーヒーをいただく」を頒布します。
※書籍は完成してます☕

客寄せ的に、M5Stackを使ってなんか作ろうと思いまして…テーマがチェアリングなので、本番ではお湯を沸かそうかと思います🔥
いや、さすがにホントにお湯を沸かすのは無理なので、ガスを抜いたOD缶にバーナーを装着して、その上にポットを載せれば、なんとなく雰囲気が、いいですよね。
そして、そのポットの蓋がガタガタ揺れてると、お湯が沸いてる感が…!

ということで、久しぶりに電気工作の時間がやってきました(笑

今回の主役機はコレ。
M5StackCapsel。実は、昨年応募したM5Stack Japan Creativity Contest 2023の参加証として頂いたもので、開封はしてあったのですが、触る機会がなく…ほぼ放置でした💦

とりあえず、これにサーボモーターであるSG90をつなげて動かしてみるも…全然動かない!!

半日やって動かなかったので、悔しい思いをシロッコのセリフに乗せてポストしてみました。

・SG90からジィーという作動音はしてるので、通電はしてる。
・ピン番号を色々と変えてみたが、まったく動かず。
・freq、dutyも色々な組み合わせを試したがNG。

その後、別のデバイス(AtomS3U)を引っ張り出してきて、接続したら、難なく動くじゃん!!

ということで、こちらのフローで動いたので共有だけしておきます。
※デバイスはAtomS3U

茶線 → G
赤線 → 5V(out)
橙線 → 14pin

とりあえず、SG90を動かすだけのサンプルです。
・0.5秒ごとにタイマーが起動
・タイマーが起動すると、1~100のランダム値を取得
・その値をサーボモータへ転送
・ランダム値を識別するために、LEDの色を変更
・ボタンAのダブルクリックでタイマー停止
・ボタンAのクリックで、タイマーの再開

ということで、Capselの方はLチカ担当になってもらうこととなりました(笑

9/24追記

freqとdutyについて、ChatGPTに聞いてみました。

freqについては、50固定で間違いなさそうです。
一方でdutyに関しては、試行錯誤してみました。
結果としては、

0度:32
180度:132


でした。この辺り、個体差があるのかもしれません。
というのも、ChatGPTでは、以下のような答えでした。

ChatGPTの回答だと、0度~180度時の差が51ですが、実測値だと100の差があって、どーいうこと?ってなってるw

良かったですね、じゃなくてさ…(笑)

この記事が気に入ったらサポートをしてみませんか?