初心者質問スレ その128
■ このスレッドは過去ログ倉庫に格納されています
/゙ミヽ、,,___,,/゙ヽ
i ノ 川 `ヽ'
/ ` ・ . ・ i、 初心者発 質問スレッドです。
彡, ミ(_,人_)彡ミ
∩, / ヽ、, ノ スレのルールをよく読んで
丶ニ| '"''''''''"´ ノ みんな仲良く教え合いましょう
∪⌒∪" ̄ ̄∪
初心者質問スレのルール
・回答者のルール 初心者を笑うな。回答者にも同じ時期があったはずだ。彼らの気持になれ。
真意をうまく聞き出すのも先輩の能力だ。
・質問者のルール 他人にわかりやすい説明を心がけて。ここには「超人エスパー」は居ません。
回答をもらったら「ありがとう」と謝礼せよ。
× 華麗に放置される質問
・自分で努力していない質問、 ・「実は、○○がしたいんです」、 ・「回路図をお願いします」
・「宿題の解答が欲しい」、 ・マルチポスト(複数スレに同質問)、 ・専門用語や変な省略語の使用
・違法なニオイぷんぶんの質問
こんな質問には、回答しません。全力放置されます。
◎ 解答が得られる質問
1) 何がしたいのか、はっきり書いてある質問
2) まず自分でググって調べてあって、 グーグル先生→ ttp://www.google.co.jp/
3) 回路図や写真がUPされていて、
アップローダ→ ttp://img.wazamono.jp/pc/ ttp://imgur.com/ ttp://www.gazo.cc/
4) そして、精一杯の説明がされていて、
5) あなた自身の予想が書いてある、
そんな質問ならレスあるかも。それでは、質問どうぞ〜
前スレ/過去スレ:初心者質問スレ
その127 https://rio2016.5ch.net/test/read.cgi/denki/1537636590/ 2018/09/23〜
その126 https://rio2016.5ch.net/test/read.cgi/denki/1533200017/ 2018/08/02〜
その125 https://rio2016.5ch.net/test/read.cgi/denki/1527340809/ 2018/05/26〜
その124 https://rio2016.5ch.net/test/read.cgi/denki/1522327248/ 2018/03/29〜
その123 https://rio2016.5ch.net/test/read.cgi/denki/1513727831/ 2017/12/20〜
その122 https://rio2016.5ch.net/test/read.cgi/denki/1481408641/ 2016/12/11〜
※前スレ
初心者質問スレ その127
http://rio2016.5ch.net/test/read.cgi/denki/1537636590/ >>276
一生懸命回答したのに「なげえよ」「わかりにきいよ」って言われたので、自分を慰めているようです。
慰めの呪文は「多様性」です。
>>275
そう、必死です。 >>273
でも、長ったらしくてわかりにくいのは勘弁ね。 ID:noHWpyWj
お前が元凶なんだけどなあw スレチですと叫んでいる奴がいちばん邪魔
ほっとけない理由でもあるのかな? ID:vS+pqP2i
お前の多様性も認めてやるから、そのかわりアンカー打てよ、分かりずれえからさ。 古い液晶モニターが映らなくなり久しぶりに買い換えました。
最近の液晶のバックライトはLEDなのだそうですが、これって白色LEDなんでしょうか
それとも赤青緑の三原色なのでしょうか。
あと、どちらにせよスペクトル上は3つの波長だけの特殊な光だと思うのですが、
画面表示でいろんな色に見えるってことは、液晶で周波数変調がされているんでしょうか。 どうせ単発IDの大半は一人の人物なんやろうなぁ
せこいやつ ググればわかる話 そのほうが詳細までわかる
質問自体シンプルじゃないし 普通に白色LED
色はピクセルごとに三原色のフィルターがあってそれぞれで液晶と電極を使って透過度を調整してるだけ。 シールを指定位置に貼るマシンを作りたいのですが、
参考になりそうなページ無いですか?
構造がシンプルそうなのは、
ラベラーのようなシールをシートから剥がして給紙するタイプのものしか見つけられなかったです。 ラズパイを利用してセンサーを繋げようとしてます。
I2c接続でsdaとsclの端子を利用してbme280とccs811を繋げたのですがbme 280しかアドレスは表示されません
接続方法はブレッドボードに繋げてsclとsdaは同じ軸で繋いでます
この方法ではダメなのでしょうか?
Sda sclを増やす方法はあるらしいですけど 安定しないのでやめた方がいいって言われましたので。。 >>295
I2Cのデバイスアドレスが被らなければ同じバスにつないでも大丈夫
アドレススキャンで見えないなら別の要因です >>296
単体です
>>297
半田つけが悪いとかですかね?
3.3v gnd scl sdaの4つで接続してるだけなんで 配線も被ると他のセンサーとアドレスが被るとかあり得ますか? >>298
データシート見てみましたけど、その二つの組み合わせならデバイスアドレスが
かぶることはなさそうでした〜
なんでしょうねぇ
もう一度配線チェックしてみては?けっこうそういうところですよ >>298
I2Cのデバイスアドレスはデバイス側の設定や仕様で決まるので、
バスが同じとかは全く関係ありません >>298
配線してるブレッドボードとかの写真も載せるといいんだけどねえ。
分かる人に見せればいろんな情報を読み取ってくれるので…。
プルアップ抵抗とかnWAVEとかはどうしてる? I2cとかSdaとかsclとか気持ち悪い。
全部大文字にしてくれよ、おれ几帳面なんで。 >>304
RasPi側でプルアップはされてるから基本的にいらないけど、
配線が無駄に長いと波形がなまって通信に支障をきたす可能性はある >>301さんがおっしゃっている通り写真あげてもらえますかねぇ >>306
明日アップさせてもらいます
よろしくお願いいたします 中華の激安USBロジアナとか持ってると、こういうとき調査できて便利 ds1054zくらいかえよ
ゴニョゴニョすればオプション全解放して100MHzにできるぞ https://imgur.com/a/pOOllJr
遅くなりまして申し訳ありません。
配線の写真をアップしました。
手前にあるセンサーがccs811です。付箋がついているのが写真中、右から
VCC(3.3v) GND SDA SCL になります。
ほかのケーブルはbme280になり配線が混じってます。
ちなみに一番左の横長のラインはbme280のSDO GND になります。
グチャッグチャですがよろしくお願いします。 アドレス結果も記載します。
pi@raspberrypi:~ $ sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --
76はbme280です。 >>304
なんでプルアップ抵抗無しで良いの? どこかにそう書いてあったとか?
I2Cでプルアップ抵抗なしは聞いたこと無いけど。 プルアップ抵抗がセンサーの基板上に付いているかもしれないが、有ったほうがいい
SDAとSCLから VCCへ、適当な抵抗(10kΩ)をつなげてみれ
あと問題切り分けとして、
まずはセンサーの基板に電源がちゃんと供給されているかテスターで調べるべし
その次は、残り2本の線が断線していないか >>313、>>310
こういう時、中華の安物でいいからロジアナがあると便利なんだよな。
https://i.imgur.com/cPSvkyt.jpg
まあオシロもあればもっといいけど。
帯域100MHzでFFTもでき、この値段はアナログ時代にはあり得なかったわ。
https://i.imgur.com/dSbQNUM.jpg プルアップ抵抗なしでいいと書いてあるんじゃなくてラズパイ+I2C扱ってるブログとかは
たいていジャンパで直接繋ぐだけの作例だからなんじゃないか
デバイス側でプルアップしてある場合多いからわざと書いてないのか知らんが arduinoだと自動で内蔵プルアップ+デバイスのプルアップで両端の端末処理されるから、ブレッドボードではわざわざ抵抗入れたりしないねー。
ラズパイは自動でプルアップされないの? みなさんありがとうございます。
今bme280を外してccs811のみを繋いだらアドレスは認識されました。
(WAK→GND追加しましたが
ですけど、同じようにbme280をワイヤーで追加で繋いでみたらbme280しかアドレスは出ませんでした。
やっぱりピンは変えるべきなのでしょうか?同一のSCL SDAがダメなのでしょうか? I2Cはバス配線なので、ラズパイ側と、デバイスの一番遠い方をプルアップするんだと思うんだけど、もしかしてbme280とccs811とラズパイそれぞれに抵抗が入ってて、信号レベルが低くなってるとか…
ちなみにI2Cは数個レベルなら、おなじピンで同居させても問題なく使えるはずだよ。
ライブラリの相性はともかく、アドレス一覧を表示させる程度ではぶつからないし。 I2Cの抵抗ってSCSIのターミネーター的な存在なの? >>318
俺もそう思うんですよね。
ためしにbmpとbmeを同時接続しても問題なかったので。
だとすればなんでアドレスが出ないのか。。
内部の抵抗ってどうしようもないよね。。 >>319
I2Cのバス仕様書を軽く読んだ限りでは、終端抵抗とは書いてなかったよ。
>>320
プルアップ抵抗、外せばよくね?
物によっては、外しやすいようになってるよ。
ハンダブリッジとか、カッターでパターンを切るとか… >>319
I2Cのプルアップ抵抗は、信号の反射を抑える目的ではなくて、オープンドレインバスの構造上バイアスをかける必要があるため。
複数プルアップ抵抗があるとLOW時の電圧が下がりきらず正しく動作しない場合がある。 >>321
伝送路長くなる場合はプルアップ抵抗を分散させた方が良い。 I2CやらSPIやら自分で回路組むならオシロ必須。
とっとと波形見てどうするか決めればいいだけ >ccs単体だと?
>単体です
>今bme280を外してccs811のみを繋
>いだらアドレスは認識されました。
、、、。 オシロ無いと困ることになりそうな写真だね
画像を見る限り、伝送路長そうだし、フラットケーブルで他ライン間の容量成分でかそうだしなー
自分なら
・フラットケーブル止めて、単線でラズパイ〜ブレッドボードを繋ぐ
・できればセンサモジュールはブレッドボードに直接刺す
(可能なら秋月の細ピンヘッダに交換)
・ブレッドボード上の配線はサンハヤトのブレッドボード用ジャンプワイヤで繋ぐ
・プルアップ抵抗は伝送路の長さ、容量に合わせて調整
(長くなるなら容量大きくなるんで、小さく。 けど小さくしすぎる >>322 さんの言う通りGNDレベル上がるよね)
あとはCCS811とBME280のI2Cアドレスは違ったんだよね? >>327
みなさんありがとうございます。
アドレスは別でした。 >>328
ラズパイ〜モジュール間の配線を、手書きで書いてup
あと、モジュールのピン付近の写真が欲しい 電源に並列にコンデンサをいれるというのがあると思うのですが、あれはローパスフィルタなのですか?
だとしたら抵抗かインダクタはどこですか?
配線ですか?電源ですか?
それともローパスフィルタではないでのしょうか。 >>329
おまたせしました。
https://imgur.com/a/pu9xECY
https://imgur.com/a/rpO5Xrx
bme280とcss11で混雑してて ピン1〜6辺りはみえにくいです。
接続の配線は書きにくかったのですが こんな感じです。
よろしくおねがいします あれ?ラズパイとセンサーは離れてるの?
一度、直結してつないでみたら?
たぶん、そのハーネスみたいなの、I2Cのバス規格に準拠してない。 >>333
直接ってことはワイヤーで本体にってことですか?
そうするとsdaとかsclみたいな共有する端子はブラッドボード使ってもいいですか? >>332
もったいぶらずにRasPi含めて、ピンボケさせずに圧縮せず高解像度であげてもらった方が話が早いと思う >>330
ローパスフィルタと見るなら電源の出力インピーダンスが抵抗やインダクタンス分を持つので
そことRCなりLCを構成していると見ることはできる
あとはどちらかというと、電源の出力インピーダンスにより電圧がドロップしたときに
コンデンサがその不足分の電流を補ってくれるという見方の方がこの場合は
わかりやすい >>334
とりあえずこれを買おう
3-4週間待てるなら、aliexpressのが安い
ジャンプワイヤ オスメス
http://amzn.asia/d/8csi3NM
http://amzn.asia/d/anqVjYC
10cmのほうがいいけど、きっと20cmも欲しくなる
サンハヤト ジャンプワイヤキット SKS-100
http://amzn.asia/d/bZ7u7OG
プルアップ抵抗調整する必要があったら抵抗セット(まずは必須じゃない)
http://amzn.asia/d/6AZ4zkE >>334
接続の番号ではなくて、
回路図は書けないの? みなさんありがとうございます。
>>333の言われているとおりに直差ししたらアドレス認識しました。
つまりリボンケーブルがi2c非対応ってわけだったのですね。
皆様本当にありがとうございます >>334
そうその通り。
赤い基板とフラットケーブルは使わずに済む。
RasPi上のコネクタで足りるならそこだけで済ます。
配線がだぶるものだけブレッドボードに引き出す。
私ならジャンパーケーブルも極力短くする。 本当にありがとうございます。
まさかリボンケーブルとは。。聞かないと絶対に分からなかったです >>339
問題解決おめでとう!
オシロがあればリボンケーブルと直刺しとで波形の違いを見たかったな。 解決できたんか、良かった、良かった。
始めたばかりのころは、I2Cの仕様書なんか読まないもんなぁ。 >>339
ケーブルの問題じゃないよ、
プルアップ抵抗値が多すぎるんだって。
まいこんの内蔵プルアップ抵抗は、80kとか高いので、i2cのプルアップ抵抗としては、不適切なんだよ。 ・・・? 直差しするとプルアップの抵抗値が変わるの? >>347
Raspberry Piは 2 しか使ったことがないので、そのほかのバージョンのことはわからないけど、
2では ボード内で1.8kΩでプルアップされていました。
>>348
もし、プルアップ抵抗が高い場合、ケーブルの静電容量が高いと応答が遅くなったり、
隣接する信号線と干渉しやすくなります。>>347さんが言ってるのはそういうことなんだと思います。 >プルアップ抵抗値が多すぎる
この言葉使いだけで、気にかける必要のないレスだとわかる。
そもそも、写真見ればRasPi上のプルアップ抵抗以外つないでないの明らかなのにな。 でも、Raspberry Piの I2Cのラインは、SDA、SCLともに、電源、グランドに挟まれて
いるので、「他の信号」との干渉は考えにくいかも。
フラットケーブルの線間容量は50pF/mぐらい。
もし、プルアップ抵抗が1.8kΩで、フラットケーブルが1mだと、立ち上がり時間は200n秒。
デバイスの静電容量ぶんが増えるとしても、これぐらいなら、I2Cの動作に問題なさそうな気もする。
実際にはラズパイのプルアップがもっと大きい抵抗だったのかな? >>351は>>349の続きでした。
>>350
コンテキストから言えば、多すぎるは、値が高い、の意味だと思います。 あ、>>351で間違い。
線間容量が50pFなので、両側から挟まれているので100pF/mですね…
それでも400n秒。まだ大丈夫、かな。
当初のトラブルが発生していたとき、フラットケーブルの長さがどれぐらいだったのかも気になります。 斬新な表現だな
抵抗値が多すぎる
逆の場合は「抵抗値が少なすぎる」とか言ってるのかな フラットケーブルの隣接の線がopenだったら、どう影響するかな?
とか、ふと思ったけどめんどくさいことは考えないようにしよう ワシが家にかえって飯食った後にupしてやるよ
>>343 >>357
おぉ、アップ宜しく。
ただしリボンケーブルの長さが数十センチと数メートルじゃ負荷条件が相当に違うから、元のシステムがどうだったか分かったほうがいいな。 I2Cのバスは電源ラインと一緒にするときはどう隣接させるか、とかちゃんと決まってるよ。
たまにはバス仕様書をみてくださいなー >>354
その方面の素養の無い人はこういう表現が気にならないんだよねえ。
ああ、この人の言うことはあてにしちゃいかんなってまず思う。 で、結局、抵抗は高い・低いか大きい・小さいかどっち?
抵抗値の場合は? 確か電々には国語学者が棲み付いてるはず。
ご登壇いただこうw すまんのぅ。
期待に全く応えられなくて。
ワシは15cmのリボンケーブルしかもっとらんかったわい。
GNDとSCLのケーブルを離したり握ってくっ付けたときのわずかな変化しか報告できんわい。
リボンケーブルの意味はないのぅ。
https://i.imgur.com/cXPBphe.png
https://i.imgur.com/sMcyetS.png それこいつだろ>>ID:OkcHA4IK
>値が高い
とおっしゃっていらっしゃる。
以後、そのように。 >>359
https://www.nxp.com/docs/en/user-guide/UM10204.pdf
これの、60/64ページですかね。
その主旨は「SDAとSCLに同じ静電容量をもたらす」となっています。
なので、3ピン、4ピンではなくもっとたくさんの線が使われる場合、
主旨を尊重すれば、この通りである意味は薄いと思います。 >>365
抵抗は大きい小さい。
国語学者は高卒だからそういう根本の素養は持ってない。
書いてる内容見れば明らか。 おえ。抵抗値は高い、低いだと思ってました。
http://www.koaglobal.com/product/lowresistance-powershunt
http://www.koaglobal.com/~/media/Files/KOA/product/catalogs/gs.ashx
ただ、そうじゃない表現に対して、違和感を感じたからといっても、そのレスを否定するのもどうかと思います。
コミュニケーションのコンパチビリティを維持するために発信側が正確さを心がけることも必要ですが、
受信側の幅の広さも必要ですね。 >>366
せっかくこう書いてあるから、とりあえず仕様書の通りにやってみたいなぁ…
17.3 バスラインの配線パターン
一般にバスラインへの、またはバスラインからの干渉やクロストークが最小になるような配線が必要です。
並列デバイスのインピーダンスが比較的高いため、バスラインは“H”レベル時にクロストークや干渉を最も受けやすくなります。
PCBまたはリボンケーブル上のバスラインの長さが10cmを超え、かつVDSやVSSラインが含まれている場合には 、以下のような配線パターンにする必要があります。
VSSラインのみが含まれている場合には、以下の配線パターンになります。
これらの配線パターンでは、SDAおよびSCLの容量性負荷が同一となります。
VSSまたはVSSレイヤーを持つPCBが使われている場合は、 VSSおよびVDDラインを省略することができます。
バスラインがツイスト線である場合には、各バスラインに必ずVSSリターンをツイストする必要があります。
あるいは、その代わりに、SCL ラインにVSSリターン、SDAラインにVDDリターンをツイストしてもかまいません。
後者の場合には、ツイスト線の両端で VSSラインとVDDラインを切り離すためにコンデンサが必要になります。
バスラインがシールド付きの場合(VSSにシールド接続されている場 合)は、干渉を最小に抑えることができます。
しかし、クロストークを最小に抑えるために、SDAラインとSCLラインの間でシールド付きケーブルに低容量のカップリングコンデンサを付けておく必要があります。 おっと、>>367さんが言ってるのは「抵抗」であって「抵抗値」ではありませんでした。
抵抗値と違って、抵抗は大きい小さいですね。 リンク先のPDFが見れるのは自分だけだとでも思ってるの?
文字化けどうこう以前にコピペする意味が全く無いじゃん。 >>375
お前こそ落ち着いて、せっかく買ったds1054zの活かし方でも考えろよ。
宝の持ち腐れじゃんw ■ このスレッドは過去ログ倉庫に格納されています