Arduino初心者熱烈大歓迎質問スレ part30 at DENKI
[2ch|▼Menu]
[前50を表示]
600:774ワット発電中さん
21/05/12 21:39:04.63 TeXUlqKP.net
アナログマルチプレクサを使えるようになるとアナログ出力を増やしたりとか色々面白いぞ

601:774ワット発電中さん
21/05/12 21:50:57.19 Z3Lhgi50.net
>>578
いろいろな何が楽しいのかよくわかりませんが
特に難しいわけでもなくそちらもライブラリがあるようなので
いつか機会があれば使ってみます

602:774ワット発電中さん
21/05/12 22:27:41.67 TeXUlqKP.net
>>579
可変ゲインアンプとか入力信号に合わせて入力フィルタを可変にしたりとかアナログ部をマイコンでコントロールするのに便利

603:774ワット発電中さん
21/05/12 22:30:13.12 h/mlZBLR.net
>アナログマルチプレクサを使えるようになるとアナログ出力を増やしたり
とてもめんどうそう。

604:774ワット発電中さん
21/05/12 22:36:14.49 djJlr2lf.net
アナログマルチプレクサやアナログスイッチ 4066,4051,4052,4053等は通過抵抗(オン抵抗)が50-200Ωあるよ
FETの5mΩとか200mΩに慣れてると、なんだこれと面食らう

605:774ワット発電中さん
21/05/12 23:06:13.72 wOl37bQA.net
お願いします。
逆USB HUBとでも言えるものは、Aruinoで作成できますでしょうか。
通常のUSB HUBは1台のPCに複数のUSBデバイスを繋ぐために使用します。
件の「逆USB HUB」は一台のUSB機器(想定しているのはマウス、キーボード)を1台の接続するために使用します。
これで何やりたいかというと、スマホの同時


606:操作です。 情シスやってるんですが、機器更新や新入社員対応で、 同じ設定をポチポチ入力するのがかったるくて仕方がありません。 これがもしできる(当然勉強は必要だと思いますが・・)としたら、 かなり楽ができるようになるので、(学習したうえで)作ってみたいと思っております。 よろしくお願いいたします。



607:774ワット発電中さん
21/05/12 23:06:56.33 wOl37bQA.net
>>583
すいません、途中送信です。
件の「逆USB HUB」は一台のUSB機器(想定しているのはマウス、キーボード)を複数台の接続するために使用します。

608:774ワット発電中さん
21/05/12 23:08:27.21 wOl37bQA.net
>>583
何度もすいません、チャットソフトの癖で・・

件の「逆USB HUB」は一台のUSB機器(想定しているのはマウス、キーボード)を1台の接続するために使用します。

件の「逆USB HUB」は一台のUSB機器(想定しているのはマウス、キーボード)を複数台のPCに接続するために使用します。
の誤りです。

609:774ワット発電中さん
21/05/12 23:54:24.64 vOM0jPTw.net
これで情シス・・・不安しかない・・・
この調子だと、出来ますなんと答えようものならおんぶにだっこ状態でこっちが情シスサポ並みの苦労ふっかけられそうやな・・・

610:774ワット発電中さん
21/05/13 00:05:05.65 dpyV+r6A.net
>>585
簡単にできますよ
やり方は全部一から十まで教えてあげるので
どこの何という会社の情シスなのか?教えてください

611:774ワット発電中さん
21/05/13 00:54:37.64 R5d5/5we.net
キーボードマクロでいいのでは

612:774ワット発電中さん
21/05/13 01:07:46.96 3Y4HXl9I.net
打鍵した通り再生実行してくれるマクロ機能付きキーボード売ってるから、お金で解決しろよ

613:774ワット発電中さん
21/05/13 01:42:21.27 ICLZYY+P.net
>>585
実際に作ったことはないのですが、比較的簡単に出来る(と思う)
PS2キーボード&PS2マウス → ArduinoProMicro等 → スマホ
複数操作するために、マウス・キーボードの出力信号を複数のArduinoで受け取る
台数によっては信号にバッファーを入れる等の工夫をするよ良い

614:774ワット発電中さん
21/05/13 03:48:02.82 OCC6cvTK.net
Arduino IDE 1.8.14 が出てますね。
URLリンク(www.arduino.cc)

615:774ワット発電中さん
21/05/13 05:21:36.67 vqzgSQu1.net
>>583
Mobile IronとかIntuneとかAir WatchみたいなMDM会社に金出して買ってもらえ
使いたい機能あるかちゃんと調べるんだぞ
スマホ自体の設定もアプリインストールもできるから
スマホ類はMDMに紐付けられる代理店から買う
IntuneとかはCSVでシリアルのリスト流し込みできるけど
紐付けされた状態で買えば、電源オンにしただけでMDM自動でインストールされてキッティング始まるから(盗難対策にもなる)
スレチだからスマホ MDM キッティングとかでググってね

616:774ワット発電中さん
21/05/13 07:30:49.20 xxTdMoCr.net
>>582
アナログ回路のセンスのない奴には使いこなせないパーツのひとつだな

617:774ワット発電中さん
21/05/13 08:34:03.60 XtNuXcGW.net
なんでarduinoでやろうとしてるのかがわからん
ADBで自動化じゃだめなのか

618:774ワット発電中さん
21/05/13 08:44:35.21 2btL9lJk.net
arduinoなら誰にも言わなきゃ自分1人で出来るからじゃない
他の機器は申請が必要なのだろう

619:774ワット発電中さん
21/05/13 13:31:22.30 dpyV+r6A.net
>>591
早速インストールしたけど、なぜか起動しない
最初のスプラッシュウインドーだけ出て音もなく消えるorz

620:774ワット発電中さん
21/05/13 13:50:35.10 OoBOKt0A.net
あいかわらずarduinoIDEって高校生が夏休みに作った感じなんだな

621:774ワット発電中さん
21/05/13 14:45:18.47 cv0AgUdC.net
M5 stack core2の質問ってここで良いの?

622:774ワット発電中さん
21/05/13 15:09:31.87 xrQSFduY.net
こっち
URLリンク(rio2016.2ch.sc)


623:364030/



624:774ワット発電中さん
21/05/13 15:16:27.25 /OrrkKg4.net
Arduinoの話ならココ
ESP32の話なら
格安wifiモジュール「esp8266」「esp32」 5個目
スレリンク(denki板)

625:774ワット発電中さん
21/05/13 16:41:42.96 4nFBrSIk.net
>>594
ADBっていうのが楽にできるの?

626:774ワット発電中さん
21/05/13 19:17:06.91 XtNuXcGW.net
>>601
まずはソフトで自動化を検討すべきだと思うけどね

627:774ワット発電中さん
21/05/13 19:17:38.41 XtNuXcGW.net
簡単かは人それぞれなので何とも言えません

628:774ワット発電中さん
21/05/13 19:21:51.89 /OrrkKg4.net
KVMスイッチって言葉が出てこない時点でこのスレのレヴェルはお察しよな

629:774ワット発電中さん
21/05/13 19:24:50.07 XtNuXcGW.net
ごめんPCの話だったんだね
スマホかと思ってた
ADBはandroidの機能なのでこの話では使えません

630:774ワット発電中さん
21/05/13 20:49:51.07 4nFBrSIk.net
>>593
なんすかそれ?レベルなんですが
覚えるしかないすか?
もっと簡単なのありますか?
マルチプレクサで落ちたセンサーの電圧をオペアンプで戻してアナログ入力に入れるって感じですか?

631:774ワット発電中さん
21/05/13 20:56:29.83 d9C/jQln.net
>>606
マルチプレクサでセンサーの電圧落としてる時点でセンスないからもっと勉強しよう

632:774ワット発電中さん
21/05/13 21:24:55.50 nptUOhJv.net
>>605
いや、スマホの話だよ
>>583が最初の相談

633:774ワット発電中さん
21/05/13 21:28:42.66 nptUOhJv.net
社員に配布する数十台のスマホに同じアプリを導入して同じ環境をセットアップする作業を楽にしたいんだろうね

634:774ワット発電中さん
21/05/13 21:32:52.58 DEOgxias.net
アナログの話になったとたんに「センス」とか言い出す奴が登場する不思議w

635:774ワット発電中さん
21/05/13 21:42:46.18 pbuIPXuC.net
>>610
アナログはセンスだけど悔しかった?

636:774ワット発電中さん
21/05/13 21:48:47.55 4nFBrSIk.net
マルチプレクサは電圧おちないんだろか?

637:774ワット発電中さん
21/05/13 21:59:17.04 4nFBrSIk.net
前のレスで電流を極小にすれば電圧降下は無視できるみたいに書いてあったから気にしなくていいレベルなのかな
センサーなんて大電流使わないし

638:774ワット発電中さん
21/05/13 22:18:33.32 YMvlfMVO.net
最近流行ってる簡易オシロとかも入力の切り替えにアナログスイッチ使ってたりするくらい

639:774ワット発電中さん
21/05/13 22:40:18.85 nE1j/e1Q.net
>>613
入力毎のバラつきとクロストークが気になる。はいセンス無いです。

640:774ワット発電中さん
21/05/13 22:43:27.69 nE1j/e1Q.net
>>604
KVMスイッチはキー入力を同報できるの?

641:774ワット発電中さん
21/05/13 22:55:28.61 ICLZYY+P.net
>>613
マルチプレクサ(アナログスイッチ)で切り替える場合
Arduino(マイコン)の入力に対して切り替えるなら無視出来るレベル
理由として
・マイコンのIOの入力インピーダンスが非常に高く
・マイコンのIOの静電容量は非常に低い
・多くのアナログスイッチのON抵抗は500Ω以下
なので、計測への影響は僅かです
(逆に言えばある程度大きい抵抗値でもアクイジション時間を長くすれば問題ない)

642:774ワット発電中さん
21/05/13 23:07:10.39 4nFBrSIk.net
>>617
参考にします
ありがとうございます

643:774ワット発電中さん
21/05/13 23:07:22.07 2fkkelg8.net
>>611
いいえ、全然。
センスだと思ってないので。

644:774ワット発電中さん
21/05/13 23:26:33.96 xxTdMoCr.net
>>619
あなたはセンスないです

645:774ワット発電中さん
21/05/14 00:47:53.92 ieqfdzmq.net
>>617
話の発端となった、ADCを増設する場合にはまったく当てはまらないが
それはわざとやってるのか

646:774ワット発電中さん
21/05/14 01:33:33.49 bFSsKcHM.net
>>621
>>567
病気ですか?

647:774ワット発電中さん
21/05/14 01:56:52.07 B/bUt9u0.net
617はデジタル入力なら問題無いよといってるだけ

648:774ワット発電中さん
21/05/14 03:36:57.18 3vWE9Y


649:LD.net



650:774ワット発電中さん
21/05/14 09:50:27.14 Bf3AKDPX.net
>>623
アナログ入力の話だろう。
どの記述で「デジタル入力なら問題無いよといってるだけ」と解釈したの?

651:774ワット発電中さん
21/05/14 09:58:24.51 Bf3AKDPX.net
>>621
>話の発端となった、ADCを増設する場合にはまったく当てはまらない
元の話は>>567だと思う。
「ADCを増設する」を必須条件とはしてなくて「ADC入力を増設する」では?
手段として、マルチプレクサを使う、ADCを外部増設する、マルチプレクサ付きADCを増設する、
と、いろいろ提案されているね。

652:774ワット発電中さん
21/05/14 10:25:39.84 Bf3AKDPX.net
あ、「ADCを外部増設する」は出てなかったか。

653:774ワット発電中さん
21/05/14 23:03:25.14 fhjt8JRk.net
やっぱ>>568だよね
マルチプレクサの特性を含めて検討するの面倒

654:774ワット発電中さん
21/05/14 23:20:23.93 5vAE0cqL.net
そうそうADCなら特性の検討は必要ないもんね

655:774ワット発電中さん
21/05/14 23:39:25.85 GuVDbWOh.net
>>590
ありがとうございます。
見当違いかもしれませんが、ググってみると、
      +----------ArduinoProMicro----スマホ
     +----------ArduinoProMicro----スマホ
    +----------ArduinoProMicro----スマホ
  さし口
arduino usbホストシールド-----------マウス、キーボード、ゲームパッドなど
    arduino本体

みたいな構造で希望のモノが作れそうな気がしてきました。
ArduinoProMicroというのが、HIDとしてふるまうことができる(そう?)ので、
そいつに対して、「マウスを右に移動した信号を、USB MiniBから出してね」的な事をしてあげれば
とりあえずは動きそうなものが作れそうです。
プログラムと違って、アナログな部分を含むので、工夫は必要そうですが、
再来年の機器入れ替えには間に合うようにぐらいで調べてみようと思います。
ありがとうございます。何から調べていいのかさっぱり分からなかったので、
イニシャルのヒント本当に助かります。ありがとうございます。

656:774ワット発電中さん
21/05/15 00:01:45.30 iM1zwIKC.net
長い棒を用意する
疑似指を取り付け
一度に操作
解決

657:774ワット発電中さん
21/05/15 00:08:58.99 Dv0PkfZd.net
皆さんの回答に感謝します
ありがとうございます
また質問で申し訳ないのですが
アナログ入力をできる限り増やしたい場合は何が向いてますか?
例えば300とか400とか
それともこんなに付けたら電気足りなくなるとか処理が追いつかないとかプログラムを納める所の容量が足りなくなるとかなんかありますか?

658:774ワット発電中さん
21/05/15 00:18:53.29 IOaMkLRu.net
ADC 8chマイコン×50個=400ch

659:590
21/05/15 00:26:08.22 I9BIKZbo.net
>>630
そんな感じでOKです
マウス・キーボード → USBホストシールド → Arduino → シリアル通信 → 複数のProMicro → スマホ
(シリアルに信号は距離が短く台数が極端に多くなければシリアルの信号をそのまま分配すればOKです)
1.USBホストシールドでマウス・キーボードの信号を受け取る
2.プログラムで処理してシリアル信号として出力
3.複数のProMicroでシリアル信号を受け取る
4.プログラムで処理してHIDデバイスとして振る舞う

660:774ワット発電中さん
21/05/15 00:43:49.41 I9BIKZbo.net
>>632
色々方法は思いつくけど、以下の内容がわかれば回答しやすい
・信号の電圧範囲
・信号源の距離・間隔
・どのぐらいのレートで読み取りたいか
・読み取った信号をどのように処理したいか(シリアルでPCに送信する等)
・信号毎のGNDが絶縁状況
※いずれにしても、コスト的にはマルチプレクサスイッチICを複数使うのが良いと思うけど
>電力
マルチプレクサを使って増やすなら問題ない
>プログラムサイズ
読み取るだけならさほど増えない
読み取った値をどの様に処理するかで変わると思う
(具体的な処理内容がわからないことには不明)

661:774ワット発電中さん
21/05/15 00:47:01.92 mdr


662:gV3eQ.net



663:774ワット発電中さん
21/05/15 01:42:53.27 KdtKIkWk.net
秋月でもILI9341の液晶扱いだしたんだね
ILI9341搭載2.8インチSPI制御タッチパネル付TFT液晶 MSP2807
URLリンク(akizukidenshi.com)
1個 ¥1,480(税込)

664:774ワット発電中さん
21/05/15 02:06:23.76 j7r/qKRg.net
Arduino IDE 1.8.15 が出たみたい。
URLリンク(www.arduino.cc)
変更内容は
HOTFIX:
* Fixed regression in library discovery (failing to compile bundled libs, like SD or Ethernet, on some platforms)
*ライブラリ検出のリグレッションを修正しました(一部のプラットフォームで、SDやイーサネットなどのバンドルされたライブラリのコンパイルに失敗しました)

665:774ワット発電中さん
21/05/15 02:10:50.62 y0HDsUnD.net
ゴミIDEはもういいからさっさとver2系をstableにしてくれ

666:774ワット発電中さん
21/05/15 08:57:58.34 fB230RcJ.net
>アナログ入力をできる限り増やしたい場合は何が向いてますか?
>例えば300とか400とか
UNOの多チャンネル入力をもっと増やしたいというイメージでの質問なら、
・たくさんにすればするほど時間はかかるようになるのはわかっている。
・入力電圧範囲は0〜5V
・絶縁はイメージしてない
という前提でいいのかな。
それなら、74HC4067のような16:1のマルチプレクサを並べるのが近道だと思う。
DIPはもう入手は難しいかも。32:1のマルチプレクサもあるけれど割高。
プログラムに関しては、変換ごとに出力ポートでチャンネルを指定する処理が増えるだけ。
アナログマルチプレクサによる変換値への影響を心配している人がいるけれど、
ON抵抗に関しては、たとえばUNO場合ならほぼ問題にはならないことは、
データシートを見ればわかると思う。
ある程度の速さが必要なら、マルチプレクサもつかいつつ、並行して変換ができるように
マイコンの処理速度が許す限り、外部にA/Dコンバータを増設することになるでしょね。

667:774ワット発電中さん
21/05/15 18:36:34.02 Dv0PkfZd.net
>>640
ありがとうございます
何種類か考えていて
主に使うのはINTERNALで
電圧は0.6Vが中心で0.6Vプラマイ0.2Vくらいの変化を見ます
時間は20mS
この時間内に20回以上測定します
回数は多いほど精度が上がり好ましいです
できれば100回もっとできれば1000回
絶縁についてはこの場合何を指してるかも分からないので多分考慮しないで良いのではないかと思います

668:774ワット発電中さん
21/05/15 18:38:38.88 Dv0PkfZd.net
でも20回でも特に問題は出ないです

669:774ワット発電中さん
21/05/15 19:07:46.04 fB230RcJ.net
たとえば、300ポイントとして、20m秒に20回を300ポイントか。
300×20×(1/0.02) で、総変換レートは300ks/秒。
単純にUNO+多チャンネルマルチプレクサでは追い付かない。
外部にA/Dを増設するとしても、扱うデータ量を考えても辛そう。
回数を取るのが、平均化で分解能を疑似的に上げるのが目的なら
多ビットのA/Dを増設して、回数を減らすのも方法だと思う。
1回のサンプルごとの変化を見たいから20回/20m秒が必須なら、
全体の設計から考えないと。

670:774ワット発電中さん
21/05/15 21:00:23.91 Dv0PkfZd.net
ごめんなさい
300個センサーがあるとして
1個あたり20mSの時間がかけられます
1つ20mSの数値を取り出したら
次のセンサー
また終わったら次のセンサー
といった感じです
300個全部のセンサーを同時に20mS20回ではなく
センサーひとつづつ20mS20回です

671:774ワット発電中さん
21/05/15 21:03:51.11 5GUOMJ8A.net
URLリンク(akizukidenshi.com)
28pin


672:パッケージで24pinのADCが可能 4pinを通信や同期に使うとしても15個でOK (180円 x 15 = 3240円) 下処理などの加工も可能



673:774ワット発電中さん
21/05/15 21:11:27.16 5GUOMJ8A.net
>>644
1msに1サンプルか
じゃあ何でもいいよ

674:774ワット発電中さん
21/05/15 21:21:50.11 Dv0PkfZd.net
>>645
これってそんなに高速なんですか?

675:774ワット発電中さん
21/05/15 21:35:44.96 5GUOMJ8A.net
>>647
いや別に普通
>>644を見る前に書いたから
300chを20msでそれぞれ20回、300ks/秒で測るとしたらパラで動かすのが簡単
そうじゃなかったとしても >>645はピン効率は良い
プログラミングが必要なのが手間だけど

676:774ワット発電中さん
21/05/15 21:45:10.75 Dv0PkfZd.net
PICはまだよく知らないけど
UNOをI2Cの親にして子をナノ20個くらい付けてアナログ入力全部入れて同時に測定するようなイメージ?

677:774ワット発電中さん
21/05/15 21:49:49.31 ZVSG2jJx.net
UNOに300個のセンサーをつけようって時点でセンスがないから諦めた方がいい

678:774ワット発電中さん
21/05/15 22:01:59.74 rpzHqnqN.net
何でも「センス」で片付くから君は楽だねえw

679:774ワット発電中さん
21/05/15 22:34:07.91 5GUOMJ8A.net
>>649
接続トポロジー的にはそんな感じ
I2Cじゃなくてもいいし同時測定じゃなくてもいいけど
はんだ付けとかできるの?
ユニバーサル基板?

680:774ワット発電中さん
21/05/15 23:38:15.37 mdrgV3eQ.net
>>651
センスがあるからな
センスがない君は人一倍努力が必要だから楽ではないねw

681:774ワット発電中さん
21/05/15 23:55:09.50 y0HDsUnD.net
セo○ス!!

682:774ワット発電中さん
21/05/16 01:36:33.27 jemyr4R9.net
>>653
はは、完全に意味取り違えてやがるw
言語センスのないことだけは確かだな、お前は

683:774ワット発電中さん
21/05/16 02:10:13.84 9Jt6y6lG.net
センサーだけにセンスでセンシング♪

684:774ワット発電中さん
21/05/16 09:04:36.65 k/cWSJek.net
センズリのセンス

685:774ワット発電中さん
21/05/16 11:06:22.45 ZzOJR+dh.net
>>652
I2Cだと256台つながるらしいですが
他のつなぎ方でもたくさんつながるんですか?

686:774ワット発電中さん
21/05/16 11:10:35.24 KiT4KzSF.net
センスを1ビット表現で評価する人が、センスという概念についてどれぐらいセンシティブなのかって思う。
加えて、何のどの程度のセンスかについて議論することもなく、それをもって「諦めた方がいい」と言えるような感覚ってどこから来るんだろうね。
しかもそれが「初心者熱烈大歓迎質問スレ」で。
そういや、アナログ回路でも、他人にセンス(何のだ? 多様なアナログ回路全部をひっくるめて、アナログ回路かそれ以外か?) についても
1ビット表現をする人いたよな。UNOでA/Dコンバータでさえ10ビットなのに。

687:774ワット発電中さん
21/05/16 12:50:32.57 Y9cwPfBe.net
マルチプレクサウンチクサ

688:774ワット発電中さん
21/05/16 13:02:40.25 ougCliZ8.net
>>658
I2Cだと7bit or 10bitのアドレスで
7bit(128)-予約(16)=112台 もしくは10bit(1024)-予約(16)=1008台
たくさん繋ぐ方法はいくつも有るけど例えばSPI接続の場合でも
CSを増やせば複数(細かい話を無視すれば無限に)繋がる
UARTでも複数接続出来る
※いずれも一定以上に台数を増やすと静電容量やノイズの対策が必要になるかな
>650,654,657,660
この辺の人らは発言が{下品,寒い,幼稚}って自覚あるの???
ここ【学問・理系】のカテゴリーなんだし、もう少し知的な話をしようぜ!

689:774ワット発電中さん
21/05/16 13:14:55.57 x7BqTkgi.net
>>661
これが知的?センスないね

690:774ワット発電中さん
21/05/16 13:54:55.24 ZzOJR+dh.net
マルチプレクサの使い方
親子で使う方法
とても参考になりました
ありがとうございます

691:774ワット発電中さん
21/05/16 13:58:07.08 IlCilacM.net
>>661
同じセンサーをいっぱいつなげるとi2cのアドレスがかぶるのですがどうしたらいいですか

692:774ワット発電中さん
21/05/16 14:43:27.14 ougCliZ8.net
>>664
◆アドレスの変更が可能な場合
単独で繋いでアドレスを変更(書き込み)してから使う
◆アドレスの変更が不可能な場合
例)アナログマルチプレクサを使用した場合の方法
・SCLは共通で接続する(台数が一定数より多い場合は回路の工夫が必要)
・SDA側をマルチプレクサで切り替えて使う
・SDAはマルチプレクサのセンサー側でPull-upする(不具合の対策でマイコン側もPull-Upも可)

693:774ワット発電中さん
21/05/16 16:27:43.72 ZzOJR+dh.net
I2CでPICとかプログラムの書けるマイコンだと
プログラム内で番号付けたりして分けられないの?

694:774ワット発電中さん
21/05/16 16:31:23.76 Bx00a0yb.net
センサーやIC側で勝手にアドレス決められてやがるよな!0x70-0x76までとか!
なんだよあれ!こっちで決めさせてくれ!

695:774ワット発電中さん
21/05/16 16:54:46.69 KiT4KzSF.net
自分でI2Cデバイスを構成できるものは別として、既成のデバイスはたいてい決まってるしね。
注文オプションで選択できるものとか、ピンのH/Lや電圧で設定できるものはあるけれど、そのあたりが限界かな。

696:774ワット発電中さん
21/05/16 16:54:47.17 N/H/ew0k.net
>>665
アナログ使わんで、素直にI2Cマルチプレクサ使え

697:774ワット発電中さん
21/05/16 16:57:30.49 KiT4KzSF.net
使え、としなくても選択肢があるのはいいこと。

698:774ワット発電中さん
21/05/16 18:30:36.43 ZzOJR+dh.net
>>669
それだとアドレスで分けられないんじゃなかった?

699:774ワット発電中さん
21/05/16 18:31:17.15 ZzOJR+dh.net
複数のマルチプレクサで

700:774ワット発電中さん
21/05/16 18:56:09.73 E4Q4nyvN.net
>>658
自分がプログラムしたマイコン同士なら
I2Cじゃなくてもいろいろと方法がある
好きにプロトコル作って好きに通信すればいい
オープンドレインで1本だけでUART通信もどきとか
2本使って良くて遅くていいならI2Cが簡単かな
>>666
YES

701:774ワット発電中さん
21/05/16 18:59:50.52 E4Q4nyvN.net
I2Cの切り替えにアナログマルチプレクサとか
センスなさすぎる

702:774ワット発電中さん
21/05/16 21:03:09.41 ZzOJR+dh.net
まだプログラムの美しさや回路の完成度を求める段階ではないので
簡単で理屈が分かりやすくて動いてくれたら良いのです
分かりやすい説明本当にありがとうございます

703:774ワット発電中さん
21/05/16 21:32:30.44 KiT4KzSF.net
I2Cをアナログスイッチで増設する応用ノート
URLリンク(pdfserv.maximintegrated.com)

704:774ワット発電中さん
21/05/17 01:30:33.47 ZbG+JYWh.net
アナログスイッチを使い同じアドレスのI2Cデバイスを複数使用する例を置いときますね!
URLリンク(i.imgur.com)

705:774ワット発電中さん
21/05/17 02:15:28.55 c7GVZKtR.net
ArduinodeIDE + ESP8266 のアップデートがあったのですが、
不具合があったので、とりあえず対処方法だけ。。。(Win環境)
半年前にあった macOS と同じ症状で、pyserialのバグっぽい。
以下から 3.4 をダウンロードして、Arduino15配下の同じ場所に上書きでOK。
URLリンク(github.com)

706:774ワット発電中さん
21/05/17 07:32:08.43 rjARuUsX.net
>>677
kwsk

707:774ワット発電中さん
21/05/17 12:08:03.41 ZbG+JYWh.net
>>679
配線方法は676の方が貼ったURLの方法と一緒ですね
・TC4051(8ch)アナログマルチプレクサを使用
・SCKを共有してSDAのみ切り替え
・SDAをマルチプレクサとI2Cデバイスの間でPull-Up
・ArduinoのdigitalWriteを2本使い4回路切り替え(3本使えば8回路切り替え


708:出来る) ・マルチプレクサを重ねれば大量に接続できる (例えば4051を9個使えばdigitalWrite6本で64回路切り替え出来る) テストコード(スケッチ)と回路図も置いときますね (※急ぎで作ったので何処かに間違いがあったらすまん) https://pastebin.com/8aZPukMs (スケッチ) https://i.imgur.com/7qgloE9.png (回路図)



709:774ワット発電中さん
21/05/17 12:46:38.40 mQMwzMDp.net
>>674
双方向トランシーバとかで切り替えるのは結構面倒くさいぜ

710:774ワット発電中さん
21/05/17 14:59:33.68 Eh9WA7YH.net
すごいとしかいいようがない

711:774ワット発電中さん
21/05/17 18:47:51.05 Eh9WA7YH.net
とにかく作ってみます
ありがとうございます

712:774ワット発電中さん
21/05/17 19:25:09.60 rjARuUsX.net
>>680
丁寧にありがとう!
真似してみます

713:774ワット発電中さん
21/05/18 04:34:04.62 azIiOfbT.net
今頃気づいたけど、PicoをArduinoとして使う記事がいつの間にかさらっと公開されてた
Raspberry Pi PicoをArduinoにしてモーションを検知してみる
URLリンク(mag.switch-science.com)

714:774ワット発電中さん
21/05/18 04:52:55.68 azIiOfbT.net
Raspberry Pi 4上のArduino IDEでも
ボードマネージャからArduino Mbed OS RP2040 Boardsを追加できることを確認

715:774ワット発電中さん
21/05/18 06:31:18.48 azIiOfbT.net
Raspberry Pi 4で開発してる人で
Raspberry Pi picoに書き込みができない人はここ見るといいかも
URLリンク(www.raspberrypi.org)
boot selボタンを押しながらRaspberry Pi 4のUSBにPicoを差してから
cd ~/.arduino15/packages/arduino/hardware/mbed_rp2040/2.1.0
sudo ./post_install.sh
と実行してから「マイコンボードに書き込む」を実行するとうまく書き込めた

716:774ワット発電中さん
21/05/19 22:58:26.10 EgNT/DI3.net
昨日初めてArduinoを触ったんだけど、素朴な疑問が。
PCからの書込み用にUSBシリアルポートを使ってるみたいだけど、PCとの通信にも同じシリアルポートを使っている。
ボーレートを変えて設定して通信した後リセットとかしなくても書込みができるのは、どうやってんのかな?

717:774ワット発電中さん
21/05/19 23:09:10.09 NOVq7Urq.net
>>688
USBシリアル変換チップの信号(DTR)を使ってArduinoをリセットしてる
ArduinoをリセットするとROMのブート部分に書き込まれてる命令で、シリアル通信の設定が初期化されて書き込みが出来る

718:774ワット発電中さん
21/05/19 23:10:34.64 RkXNTMYd.net
>>688
あなたが書き込んだのとは別のブートローダというプログラムが動いてるから

719:774ワット発電中さん
21/05/20 03:34:01.62 mCQ+vM57.net
Arduino で I2C OLED 1.3インチにメニューを表示して
タクトスイッチでカーソルを上下して選択し、その選択にあった
次の画面に遷移するような事をやりたいのですが、
コードがぐちゃぐちゃになってしまいました。
画面を構成したり、ボタンとカーソルを連動するのに便利な
ライブラリがあればご教授ください!!
ちなみにタクトスイッチは3つで、上/下/決定ボタンのように
使用したいです。

720:774ワット発電中さん
21/05/20 07:08:27.05 p8tgOT6p.net
丸投げか・・・
いったんソース捨てて新規に整理して作り直せよ。

721:774ワット発電中さん
21/05/20 07:58:23.82 EaNGghCO.net
ライブラリで解決する系の問題じゃないと思うの

722:774ワット発電中さん
21/05/20 08:43:47.72 uHCOcU/n.net
U8g2 でええんやないの?
URLリンク(github.com)
そのままだと表示だけなので、残りはスクラッチになるけど、
探せば誰かがラッピングしてくれてるかも?

723:774ワット発電中さん
21/05/20 08:46:29.23 Bft77aJe.net
APIかな?

724:774ワット発電中さん
21/05/20 11:46:58.51 gWYSRppZ.net
>>691
ふつうにif else文でやってるわ…
選択して決定Bが押されたらLCDクリアして
次の画面を表示してる
あとは30秒操作無しならキャンセル…って表示を出して
ループに回帰とか

725:774ワット発電中さん
21/05/20 13:18:07.72 EUUXLNyN.net
>>691
構造体のリスト構造で階層を記述して、リストを手繰るロジックにすれば、それ程難しくならないはず。
階層構造をプログラムロジックにハードコーディングすると収拾付かなくなりますよ。

726:774ワット発電中さん
21/05/20 13:19:59.60 mCQ+vM57.net
youtubeの情報を参考にメニュー作ってみます。
親画面から子画面に移ったり孫画面に移ると画面数が多くなるので、間違わないような記述を考えながらやるしかないですよね。
if else文できれいに書けるかどうかやってみます。

727:774ワット発電中さん
21/05/20 14:55:26.72 WJfiomo9.net
いいね
ライブラリで出来ました〜じゃ経験値は増えないからね

728:774ワット発電中さん
21/05/20 21:29:03.06 wopwPffe.net
arduinoでクラス使えたら楽に出来るのにね
と思ってふとググったらクラスあったのね
勝手にないもんかと思ってスパゲティいくつか作ってたわ

729:774ワット発電中さん
21/05/20 21:41:37.79 8qwmd3gU.net
cppで普通に使えるからな

730:774ワット発電中さん
21/05/20 21:41:41.18 8KOkyIwY.net
ていうか、C++だしね。

731:774ワット発電中さん
21/05/21 10:04:56.12 Z7Q4u7IT.net
逆にクラスになってないライブラリなんてあるのかね?

732:774ワット発電中さん
21/05/21 10:33:28.72 4XU9/KWR.net
クラスってどんなのかざっくり教えて

733:774ワット発電中さん
21/05/21 11:12:52.10 B+1Yqy+n.net
オブジェクトの雛形

734:774ワット発電中さん
21/05/21 11:17:25.60 Mwvx9vf4.net
構造体に関数のポインタを入れたもの

735:774ワット発電中さん
21/05/21 11:39:57.33 4XU9/KWR.net
ありがとうございます
知ってた方が良さそうだから勉強してみます

736:774ワット発電中さん
21/05/21 11:49:39.36 Z7Q4u7IT.net
>>704
手続き型言語しかやってないのだと思うけど、
ざっくり説明できるものではない。
継承、抽象データタイプ、カプセル化とか言っても分からんでしょ?
今更、オブジェクト指向から勉強しろとは言わないけど、
検索するなり、本気で知りたいなら本でも買いなよ。

737:774ワット発電中さん
21/05/21 12:05:20.91 4XU9/KWR.net
>>708
そうですね
まるきりここで教えていただくつもりもありませんので
失礼しました

738:774ワット発電中さん
21/05/21 12:24:01.02 Ph8qtTi1.net
とりあえず関数にまとめるだけでも良いんでないの。もうやってるかもだが。

739:774ワット発電中さん
21/05/21 15:46:21.61 AB3+AWgp.net
ATMega168のピンだけで9桁の7セグをダイナミック駆動させたけど、なんか暗い
200Mhzぐらいで点灯させても暗い
3.3Vで屋外運用したいけど、ちょっと暗いんでいい方法あります?
Max7219とかLEDをドライバICもあるけど、8桁用なんで。9桁欲しい
参考にしたサイト。やっぱトランジスタ使わないとダメですかね?
URLリンク(garretlab.web.fc2.com)

740:774ワット発電中さん
21/05/21 15:46:51.93 AB3+AWgp.net
>200Mhzぐらいで点灯させても暗い
200Hzの間違いですw

741:774ワット発電中さん
21/05/21 15:57:55.67 Ph8qtTi1.net
周波数上げ下げしてもdutyが同じなら変わらん。duty上げるか電流上げるか。

742:774ワット発電中さん
21/05/21 16:05:06.31 vNEi28M0.net
そこにある通り240Ωの抵抗を使ったなら7mAしか流れてないから最大値の20mAに程遠く、暗いのは当たり前
OSL40562-LBという7セグメントLEDはとても明るいらしいけど君が使ったのはそうではないんだろう
20mAまで流してそれでも暗いかどうか判断すべきじゃないのかな

743:774ワット発電中さん
21/05/21 16:21:03.24 AB3+AWgp.net
>>714
抵抗は下げましたね。でもそんなに変わらず。
duty上げるのは更新頻度を上げるのとまた違うんですかね

744:774ワット発電中さん
21/05/21 16:49:07.42 YAciEv5a.net
7セグの前にスモーク板を置いたら見えやすくなる。

745:774ワット発電中さん
21/05/21 16:52:07.61 AB3+AWgp.net
あと、内部クロックの8Mhzで動かしてるんですが、
digitalWrite自体遅いでしょ?ポート直接叩いて高速化したほうが良いのかな
参考サイトのスケッチ通りdigitalWriteを使っても、200Hzぐらい余裕で出ます?

746:774ワット発電中さん
21/05/21 16:52:41.08 AB3+AWgp.net
>>716
あ、そうする予定です。屋外なので防水も兼ねて

747:774ワット発電中さん
21/05/21 17:47:03.14 grGGtkLg.net
まずデューティー比、というかPWMについて勉強しよう!
そして希望の明るさがでる電流値がいくらなのか実測しよう!

748:774ワット発電中さん
21/05/21 18:53:52.76 v2Sm9nTt.net
ダイナミック点灯中にPWMで駆動してるのか?

749:774ワット発電中さん
21/05/21 18:53:58.54 ryNcnbR9.net
抵抗下げたって行ってるけど、具体的な数字が出てないから、電流流しすぎてLED焼いたんじゃね
一度焼け焦げたLEDは適切な電流流しても暗くなるよ

750:774ワット発電中さん
21/05/21 19:01:30.77 ttBqDOql.net
9桁なら理想的な条件でも平均的な明るさは一桁だけ点灯し続けてる場合の1/9になると思え
桁数を増やせば増やすほど同じLEDなら暗くなる
更新頻度を上げても明るさのチラつきが減るだけで平均的な明るさは基本的に変わらない
いっそのこと更新頻度を思いっきり下げて一桁ずつ順に点灯するように見えるようにすると点灯桁は明るく見えるようになる

751:774ワット発電中さん
21/05/21 19:30:02.53 hTxFTy2N.net
>>711
えーーっと、参考にしたサイトにも書いてあるけど、ここで使用している7セグと
同じ様な接続方法で動作させる機器の場合、1セグ分のLEDが並列接続されて
いるので、240Ωの抵抗で接続したとしてもカソードに接続する入出力ピン(ピン
接続のところで言えば12番に接続する入出力ピン)に50mA位流れてしまい、
Arduino UNOの1ピン40mAまでの制限に引っかかり、9桁だと全点灯した場合
450mAとATmega328Pの制限(168も同じかはデータシートを見てね)最大電流
200mAを超えてしまうので、1セグ分でテストを行うだけならばまだしも、
Arduinoだけで9桁分の電源を供給することは出来ません
点滅させてうまい具合に制限を超えないようにスケッチを書けば出来なくも
無いかもしれませんが、制御が煩雑だと思うのでドライバICを複数使うとか
した方が良いと思いますよ
点滅と明るさについては、どのように制御しているのか分からないので単純に
どうなるとは言えないですが、点滅周期を早くすると暗くなることはあっても
明るくなることは無いはずです
点滅させるということは消えている間は光らないということなので、光る時間が
短いほど感覚的には光り方が暗く感じるということになります。このとき、点灯
させる全てのLEDを順番に点灯->50ms待って全部消灯->50ms待って全部
点灯と繰り返すのと、待ち時間を25msに変えた場合では点滅周期は25msの
方が早くなりますが、1秒間の点灯時間は同じ500msになる


752:スめ点滅周期を 単純に変えても明るさは変わらないってなります(厳密には間違っているけど) 点滅で輝度を擬似的に変化させようとする場合には、一切消灯しない場合が 輝度100%、単位時間当たりの消灯時間を増やしていけば、消灯時間の割合に 比例して輝度が低くなり、この割合をDutyって呼びます 点滅の周期が長いと普通にチカチカ点滅して見えてしまいますが、点滅を早く すると人間の目で見た場合連続して点灯しているように見えるので、点滅で 輝度を制御する場合には点滅周期を短くした方が良いということになりますが、 Duty制御を行わないと単位時間での点灯時間が変わらないので意味が無いと いうことになるです



753:774ワット発電中さん
21/05/21 19:39:29.63 ToCbJ5cH.net
>>723
ダイナミック点灯だから最大でも1セグ分しか同時には流れんぞ。

754:774ワット発電中さん
21/05/21 19:53:56.18 AB3+AWgp.net
>>721
流石に焼いたら分かりますよw
>>722
やっぱ9桁がネックですかねー。試しに1桁ずつやってみます。
今まで通りドライバIC使いますわ。皆さんありがとうございました。

755:774ワット発電中さん
21/05/21 19:55:43.96 AB3+AWgp.net
>>723
なんか長文書いていただいてありがとうございます。
所々参考にします。

756:774ワット発電中さん
21/05/21 20:29:42.60 F6/+ILox.net
失礼なヤツw

757:774ワット発電中さん
21/05/21 20:41:24.24 YAciEv5a.net
>>725
バックライトつきのキャラクター液晶とかOLEDはだめなんかな。

758:774ワット発電中さん
21/05/21 21:02:54.52 AB3+AWgp.net
>>728
桁数が増えると結局そっちのほうが楽ですね。それも考えたんですけど、
数メートル離れた所からでもよく見えるように視認性を考えたら7セグかなぁと思って。
7セグ好きっていうのもあるけどw
大型液晶だとコストも増えるので予算1,000円以下/個に収まらないと思うので

759:774ワット発電中さん
21/05/21 21:07:58.19 k5ZGJllH.net
8桁までならモジュールになったやつとか結構種類あるからArduinoにポン付でいけるけど
9桁だとほとんどないなTM1638とかTM1640かな

760:774ワット発電中さん
21/05/21 21:35:00.79 XMvNxJPj.net
8桁のmax7219モジュールと自力1桁で解決

761:774ワット発電中さん
21/05/21 21:35:39.91 V0i2mGSl.net
HOLTEKのHT16K33は16桁まで表示できて良いですよ
価格もそんなに高くないし、I2Cで楽だし複数個繋げられるし
自分の中では最強の7セグドライバーかなと思ってますね

762:774ワット発電中さん
21/05/21 21:36:54.19 V0i2mGSl.net
>>731
自力1桁いいですねw そうしようかな

763:774ワット発電中さん
21/05/22 00:06:44.16 iRfe0wg8.net
すみません。
電子工作初心者なのですが、ArduinoとMAX30102(VIN,GND,SCL,SDAの4ピン)を使って、血中酸素濃度計測器を作っています。
コードも配線もなんとかなり、プレップボード上では動作するに至りました。
そこで、常時体につけておくセンサー部と、廊下の床においておくArduino本体部を分け、取り回しをようと、その間を1.5mほどの配線で渡したのですが、そうすると動作しなくなります(センサーLEDが点灯しない)。
1.5mの配線に問題があるかと思い、Lチカのみで試すと光ります。
どのような原因が考えられるでしょうか?やはり配線が長すぎでしょうか?
何卒よろしくお願いいたします。

764:774ワット発電中さん
21/05/22 00:54:05.47 SBrrf4Tw.net
>>734
恐らくPull-up抵抗値が高い(内蔵Pull-Upだと)のが原因だと思いますが
(距離が伸びた事で静電容量が増えI2Cの信号の立ち上がりが遅くなりうまく通信出来ていない)
動作電圧の関係でMAX30102単体だとArduino(UNOだ


765:としたら)とは直接接続できません! 使用してるのはMAX30102を使ったモジュールだと思います モジュールには周辺回路が有ると思うのですが、その回路により対処が異なるのでモジュールの詳細をお願いします あと別の解決方法としては通信速度(I2Cのクロック)を下げれば動作はすると思う



766:774ワット発電中さん
21/05/22 17:21:42.97 iRfe0wg8.net
>>735
ご教示いただきありがとうございます!
理屈を理解できていないながらも、I2Cを400kHzから100kHzに落としてみましたが、動きませんでした。
センサーはMakerfireのMAX30102のモジュールを(amazonで購入)
コードはこちらを
www.hackster.io/gatoninja236/open-source-pulse-oximeter-for-covid-19-4764c5
配線ケーブルはこちらを使用しております。
www.yodobashi.com/product/100000001001083291/
もしお気づきの点があれば何卒ご教示ください。プルアップ抵抗という概念は初めて知ったため、もう少し勉強させていただきます。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

283日前に更新/285 KB
担当:undef