Arduino初心者熱烈大歓迎質問スレ part20
■ このスレッドは過去ログ倉庫に格納されています
http://www.arduino.cc/ 【質問者心得】 ・スレに一応目を通してから質問しましょう ・回答者はエスパーではありません。状況が分かるように詳しく書きましょう 詳しく書いてくれないと、答える方も困ってしまいます。答えようがないのです 【回答者心得】 ・すぐにググレカスと言う前に「○○でググれカス」って言うような大人の余裕を見せつけてやりましょう ・節度ある初心者さんには、特に優しくね 【分裂騒ぎ】 おさまった模様。くわしくはぐぐれ。 前スレ Arduino初心者熱烈大歓迎質問スレ part19 [無断転載禁止]©2ch.net http://rio2016.2ch.net/test/read.cgi/denki/1500745528/ 過去スレ Arduino初心者熱烈大歓迎質問スレ part18 [無断転載禁止]©2ch.net http://rio2016.2ch.net/test/read.cgi/denki/1485192244/ Arduino初心者熱烈大歓迎質問スレ part15 http://rio2016.2ch.net/test/read.cgi/denki/1451893274/ Arduino初心者熱烈大歓迎質問スレ part17 http://rio2016.2ch.net/test/read.cgi/denki/1471967293/ Arduino初心者熱烈大歓迎質問スレ part16 http://wc2014.2ch.net/test/read.cgi/denki/1451909868/ 関連スレ 【Arduino】フィジカル・コンピューティング4【OSC】 http://wc2014.2ch.net/test/read.cgi/denki/1407830304/ 学研マイコン Japanino ジャパニーノで遊ぶスレ 3 http://kamome.2ch.net/test/read.cgi/denki/1286354827/ レギュレーターもコンデンサーも使っていませんでした。 「5V」に繋ぐにはレギュレーターで降圧させる必要があるんですね。 ? Vin はレギュレーター通ってCPUに接続されてるけど・・・ 単にパワー不足じゃ 3端子レギュは7〜12Vの電圧がいるけど 電池直列だと内部抵抗も大きくなるので電圧降下大きいはず 一回動作させてる時の電圧測ってみれば? >モーターの代わりにLEDでやってみれば >動作が安定するようだったらノイズだろうから モーターの方がでかい電流が流れます。 ノイズじゃなくてもレギュレータがもたないのかもしれません。 ダイセンのギヤードモーターの起動時のでんりゅうがどれぐらいなのかわからないですが それが、マイコンボードの5Vから供給されるのであれば、レギュレータにはきついかもしれません。 外部に十分大きい電流駆動能力のある5Vレギュレータを用意して、マイコン基板の5Vから供給してみては? (マイコン基板の電源と、モータードライブの電源を分けるのも方法だと思います) レギュレーターは内蔵されていて「Vin」に通っているんですね。 すみません。初心者すぎてよく分かっていないのですが、ネットや本で乾電池1.5V*4本=6Vの電圧を 「5V」のところに挿している回路図をよく見ますが、「Vin」に挿すのと「5V」に挿すので動作の安定性に 差はありますか? >>350 >ネットや本で乾電池1.5V*4本=6Vの電圧を 乱暴な気もしますが… Megaで使っているマイコンの電源電圧の絶対最大定格(それ以上かけると壊れないことを保障できない)は6V。 動かないことはない、ってことでしょうね。 電池の電圧は電流を引くと落ちます。モーターが回るとボルト単位で落ちるかもしれませんが、マイコンはなんとかそれでも動作するかも。 レギュレータは、過大な電流を引くと、極端に電圧が落ちる場合があります。 重複しますが、整理すると 「電池の電圧6V」をVINに繋ぐと、マイコンには安定した5Vが供給されるが、過大な電流では電圧が極端に落ちるかも。 「電池の電圧6V」を5Vに繋ぐと、マイコンにかかる電圧は不安定になるけど、案外電流の変動には強い場合も。 なお、電池の電圧1.5Vは公称値でして、消耗や電流で変動します。 設計するときは用途によりますが、1本あたり 1.6V〜0.9V で変化しても大丈夫なように考えることが多いと思います。 ArduinoMegaの回路図 ttps://www.arduino.cc/en/uploads/Main/arduino-mega2560_R3-sch.pdf Arduino純正モーターシールドの回路図 ttps://www.arduino.cc/en/uploads/Main/arduino_MotorShield_Rev3-schematic.pdf モーターの電源は、モーターシールド上のネジ端子のVin(LSP5)か (VIN-CONNECTが切断されてない場合は)Arduino本体のVINから供給されてるから 5Vのレギュレータどうこうは関係ないんじゃないかな もっとも、それだとUSBからの電源供給でモーターが回るのが不思議なんだけど 誰か説明して Arduinoのレギュレータ入口側は7V位ないと足りないんじゃないかな。 作りたいのはライントレーサで、USBを電源にしたら動くんでしょ? それならUSBモバイルバッテリを電源にすれば良い。 倒立振子をそうやって作ったよ。 https://i.imgur.com/WjLmdfs.jpg >>352 >もっとも、それだとUSBからの電源供給でモーターが回るのが不思議なんだけど ほんとうだ。 NCP1117(レギュレータ)の5V出力からVINに逆流しているのかも。 >The NCP1117 family has two internal low impedance >diode paths that normally do not require protection when >used in the typical regulator applications. 一応逆流をさせるためにプロテクションダイオードは内蔵されているらしい。 でも大きい電流を賄えないから、そういう場合は外付けダイオードの追加が推奨されている。 もし、このパスでモータードライブシールドに電源が供給されているのだとすると、 現状、USB電源で駆動して、モーターをドライブしているのは、かなり危ういことになるけど 実際のところはどうなってるんだろう。 電池ではなくて、VINにしっかりした7V以上の電源を繋いで動作実験した方がいいかも。 USBから電源取るときはレギュレータを通らないのでは? うっかり「5Vのレギュレータどうこうは関係ない」って書いちゃったけど 上のほうで書かれてるような「レギュレータがモーターの電流流せない」とかじゃなくて モーターに電流流れたとき、VINの電圧(電池の電圧)が レギュレータの最低入力電圧以下に下がっちゃうってことなんだろうな ・全温度範囲での最大ドロップアウト電圧1.2 V (800 mA時) 新品電池 5本直列時ならいけてもよさそうな気はするんだけど・・・ 皆さん答えてくださってありがとうございます!明日試してみます。 逆流って言っても本来ブリッジ用のパターンはんだ付けしてなきゃVINからも入らない気がするんだけどな。これ普通にドライバのVSS(5V)だけから供給した結果ドロップダウンに耐えきれず不安定になってるんじゃ とりあえず使い方的にはLSP05にモーター用の電源別で入れたげるか、arduino側と共通にしたいならはんだブリッジ接続してVINに12V入れるのが安全 というか>>352 の時点で洗い出しされてたか、すまん。 多分USB供給量>モーター消費>レギュ供給量の絶妙なバランスなんだろうなぁ >>342 エネループは大電流取り出しに向いていない(せいぜいDCモータ1つまで) 東京マルイ No.153 ニッケル水素ミニSバッテリーを使うのが入手性その他の点一番楽だった。 配線はもちろん太い電線を使ってください。 自分が工作した範囲内で書くと上記のバッテリから自作の電源回路を通じて DCギヤードモータ2個とRCサーボ4個までは同時制御できた(その他センサ、Arduino Uno等も含む) ノイズや電圧降下に関する問題はもちろんあるので地道に対応した。 Arduinoをバッテリ駆動するときのお勧めはMT3608 入力電圧の幅が広く、出力は3.3Vにも5Vにも使えるし、 電流も取れる。入力はエネループ2本でok 5pcs MT3608 2A Max DC-DC Step Up Power Module Booster Power Module http://s.aliexpress.com/b2EbaE77?fromSns=Copy to Clipboard (from AliExpress Android) ESP32でやっちゃえば5V要らずでIOたくさん無線もできて安くてぱわふりゃーで、、、、 最近あっちこっちでESP32厨がうるさいんだけど元PIC厨? >>359 >ブリッジ用のパターンはんだ付けしてなきゃVINからも入らない 現物持ってないし、質問者がどうしてるのかも分からないけど VIN-CONNECTのパターンはデフォでは接続されてて、分けたいときは カットしろってことらしい ttps://store.arduino.cc/usa/arduino-motor-shield-rev3 >This is possible by cutting the "Vin Connect" jumper placed on the back side of the shield. Ali、色々扱ってるけど国内で若干高くても(数倍とかは流石に高すぎるし)同じレベルの品揃えで扱える所ってないのかな? aitendoに行って何が欲しいか尋ねれば中国人のお姉ちゃんがタブレットで丁寧に説明してくれるで 超が付く初心者で申し訳ないです。 arduinoで複数の時計やGPSのモジュール繋いでLCDに投影したいんだけど、プログラムとかが全然分からないのでお勧めの書籍を教えてください。 簡単な電子機器の修理をしてたのでハードやアクションは分かるのですが、プログラムは素寒貧で学生時代にロボット動かすのに少しだけC言語に触った程度なので初心者向けだとありがたいです。 お願いします。 >>371 そんな目的なら幾らでもネットに作例があるから たとえば http://iot.keicode.com/arduino/arduino-gps.php とか、ggればすぐに出てくるが 一般的な話は書店で立ち読みして合いそうなのを選べば? 大抵モジュールのライブラリーにスケッチ例があるから それをつなぎ合わせて、はい完成 Arduinoで全整流の最高電圧を測定する方法って 上の方で見かけた手法が効率いいの? max関数でおそらく最大値を一周期分記録し続けているんだと思うけど ほぼそれだけでATmega328だとリソース取られるよね だからデュアルコアのesp32使ったのかな 直にレジスタを制御しないと1周期分のデータ取得すらかなり厳しいと思うよ。 俺が以前に試した時は 60Hzを全整流した120Hzなら4周期分ぐらいサンプリング取ってやっとバラつき収まったか?ぐらいだった ピークを運良く拾ってくれるようなやり方よりも LPFなりで平滑化してからの方がいいも思う 連続的で安定した波形でレスポンスを求めないなら、 入力波形が100Hzだとしたら、99Hzで101回とか、99.9Hzで1001回サンプリングするのはどう? ピークホールド回路付ければぁ? あとは、いちいち全部取って平均じゃなくてその場でEMA取ってしまえば変数は一個でいい。 複雑に組みすぎなんじゃね 120Hzのピーク値なんてwhileで捕まえて 決めた時間内にmax関数で最大値を変数へ更新し続けるだけで十分 ad精度を少し落としてサンプリング数を増やすと結果的に安定する事もある どうしても簡易的なデジタルのみでやりたいのなら この辺のチューニングでやりくりするしか無い analogReadもビットでポートを直に指定するだけで一度の呼び出しで40クロックはいるのが4クロックぐらいまでは減るから ループ速度が重要な所はArduinoのオーバーヘッドをいかに軽減するかに力を入れるといいよ atmega 328pはそんなに低性能じゃないから、 性能を引き出す事にチャレンジするのもまた新しい楽しみや知恵の蓄積に繋がるはず そもそもなんでデフォでポート指定は内部的にそんな遠回しな処理になってるんだろう 初期のコンパイラ仕様がしょぼくて後々互換的な問題が出て来たのか? その通り。 性能よりもアーキテクチャごとの互換性重視なので初期に制定されたコンパイル仕様は 不具合でもない限り変更は為されない。 性能が欲しければ直叩きできるように救済処置はきちんと取られている。 Arduino初心者です。 質問させてください。 arduinoを使用してロガーをつくりたいのですがフラッシュメモリやグローバル変数が足らなくなってしまいうまく動きません。 なのでスケッチ内でメモリを一番消費しているSDライブラリから使わない機能を無くしたライブラリ作ればメモリを節約できると考えました。 そこでSDライブラリ内のSD.cppのmkdir()やremove()を消してコンパイルしてみたのですが使用しているグローバル変数もフラッシュメモリの量も変わりませんでした。 自分で検索しても限界を感じたのでSDライブラリのメモリ節約方法または純正SDライブラリよりメモリを使用せずにSDを教えて欲しいです。 ちなみに使いたい関数はbgin,exist,open,close,plint,plintlnだけです。 >>382 C++も触ったことが無いので自分の力でライブラリを制作するのはできなそうです。 >>383 どのライブラリを使ってるの? FAT16専用のこれ↓とか試した? Smaller FAT16 only library for Arduino https://github.com/greiman/Fat16 >>384 IDEに元々入っているライブラリを使ってました。 そのライブラリは見つけてませんでした。試してみます。ありがとうございます。 >>382 こういうこと書くと、猛烈な反撃あちこちからくらうのが目に見えてるんだけど 製品千・万台作って売るからコスト最優先とか、あるいはUNOでこれだけのことやって オレスゲーと自慢したいんじゃなかったら、あっさりMEGAとか使うっていうのも 選択肢じゃない? ここ見てると、シリアル複数チャンネル使うのに、ソフトシリアルで苦労してるとか 一体どういう意味があるのか?って疑問わいてくる 中華ArduinoだってUNOしかないってわけじゃないんだし >>386 Unoってそんな立ち位置のお試し版スレスレの商品だよね本来 メモリやGPIO足りない使い方の人はMega買ってねみたいな認識で正しいと思う UNOが幅を利かせる理由 (1)「純正品だと」Megaは結構な価格になる。 (2)Megaはフォームファクタがちょっと違う。 (3)解説書はUNOが多いから安心。 (4)UNOでここまでできるんだ、と人を驚かせたい。 (1)は互換品を探せば十分低価格と言えるものはあるはず。 収納スペースが先にありきだったら、(2)は問題になるかな。 でもUNO形状のリッチなものもあるよな… (3)、(4)あたりは、古いPICマイコンのユーザーに通じるものがあるな。 提供する側も、使う側も、UNO推しを続けていると不幸になりそう。 nanoの互換品に至っては300円程度から手に入るから 俺はもうnanoをDIP ICの扱いでそのまま組み込んでる 社内で使う設備に限りだけど >>386 運用する場所、シールドの作りやすさを考えUnoまたはPro Miniの使用を検討していました。 >>390 Uno形状のリッチなのもあるのですね、初心者なので知りませんでした。調べて良さそうだったら使用してみます。 >>392 シールドを自作するくらいの力のある人なら、Arduinoを「CPUボード」と捉えずに クロスプラットフォームで使える「IDE・API・ドライバ・サンプルプログラム群」という、今風の言い方だと「エコシステム」として捉えてみたらどうかな? UnoとかMega使って手軽にサンプルプログラムを検証できることが有用なことは 間違いないから、ファーストステップとしてそれはやるとして シールド自作する力あるんだったら、シールド上にCPU載せるとか そこまでは・・・って言うんだったら nanoを載せるとかも考えられるし 普通に好きなCPU選んでPCB起こすかユニバーサルに張り付ければいいだけやな テスト用じゃないのに既製品を使うメリットない 俺がArduinoIDEに初めて触れたのは、ESP8266を動かすときだった。ハードはAVRじゃなくても何でもいいね。 そう、Arduino==Unoでもないし、Arduino==AVRでもない まあ、検証されてる環境がUnoだったら、とりあえずはUnoでやってみて そこから別の環境にもってくのが手堅い手法だし、それが廉価なボードで できるのがArduinoのいいところだと思う ATmega328って意外な所でちょくちょく見かけるな 電子レンジのタクトスイッチが調子悪いから 分解修理した時に見かけた リモコン付きの扇風機で見かけた 変速が滑らかで自然風に近い事を売りにしていた扇風機 サイリスタを変調制御していると思っていたが 意外な事にモータがDCだったからfet一つで制御 3Dプリンタだけかと思ったらそんな身近な家電にも入ってるんだ・・・ うちの製品にもATmegaシリーズはよく使っているよ 5〜10年保証の品には特にその傾向が強くなる 初心者の方ほどよくわかると思うけれど とにかくタフなんだよ。 出力をショートさせてしまったり定格を遥かに超えた入力 更には電源の逆接をしたことのある人は多いと思う それでも壊れなかった人が大半じゃないかな。 外部ノイズでFlashが化けるなんて事もまずない 信頼性が必要な用途ほどよく使うから 長年使用される前提の家電では見かける率が高くなると思われる そもそもATMELのマイコンは宇宙開発で頻繁に使われるマイコン ググればNASAやJAXAのレポートがいくらでも出てくると思う >>393 詳しい解説ありがとうございます。 CPU、nano を載せる事は考えたこともありませんでした、少し考え方が狭かったです。 もう少し色々勉強してハードは選定しようかと思います。 シールド作りもCADさえ覚えればPCB試作1000円くらいで作ってもらえるからねえ 敷居はかなり下がったと思う 確かにAtmelのマイコン壊れたこと一度もないな 使えなくなったのは大抵ヒューズの設定間違えたあたりだし 他社のマイコン使ったことないからこれが普通なのかは分からないけど MEGAとかDueでピンをフル活用するようなときは、上にのっかるのがいいだろうけどUnoで足りることなら、nanoとかDIPのAVRを載せればいいわけで PCB設計の労力がそんなに増えるわけでもないから、「シールド」という形に こだわらないほうがいいかも 10年くらい前、PICで車のドアミラーコントローラ作ったけど数ヵ月おきにPICだけ交換したな。 一発破壊じゃないと原因究明難しい。原因は今でも謎。 最近電子工作に唐突に興味がわいたのでarduinoでいろいろ勉強してみたいのですが、 スターターキットを安く買えるところ(通販可)をご存知ないでしょうか? できれば公式で買うのが良いのでしょうけれど、円高とはいえ送料等で結構かさむようなのでできれば避けたいです。 自分が探した限りではRobotShop.comの9440円が最安値でした。 都内住まいなので関東圏なら遠出してでも買いに行きたいくらいには熱量があります。 英語読めるので言語の違いで値段が変わるなら英語でも問題ないです。 長文でご迷惑かと存じますが、よろしくお願いします。 >>407 amazonで「arduino」検索 必ずしもスターターキットに拘らないほうがいいよ >>408 一つの製品(パッケージ)の割に作れる内容が多いからお得かな、と思ったのですが考えが甘かったでしょうか…? >>407 https://www.amazon.co.jp/gp/aw/d/B0025Y6C5G/ これどう?本物のunoと他そこそこでこの値段だよ 値段に拘るならamazonのkumanとか検索して適当なのでもいいよ unoやnanoの互換品は純正とほとんど変わりないけど、CH-340GっていうUSBチップが載っててその対処さえなんとかなれば純正買わなくて済むよ CH-340G arduinoってググッたらすぐ対処法出るよ >>409 とりあえず見てみたの? 「スターターキット」は純正のを言ってるんだと思うけど 純正じゃないのも見つかるし、色々見てたら個別に必要なものを買ったほうが いいって思うようになるかもしれないし、そこはご自由に >>407 全くの電子工作未経験だったら 秋月あたりいって arduino uno (純正) 電源アダプター usb cable LED 抵抗 少々 ブレッドボード ジャンパー線 買ってくる わかってれば 純正でなくてもいいけど つまずくと 時間もったいない 出力のショートをさせてしまうと 普通は出力モードで使用していたとしても弱い内部のプルアップ抵抗が真っ先にやられて リークするようになって 恒久的に消費電流の増加 そのピンの出力低下または使用不可になるのが多い故障モード Atmegaは破損する前にハードリセットがかかるから おかしな事してリセットされてしまった経験ある人多いんじゃない >>410 おおっ、ご丁寧にアドレスまで頂いてしまって恐縮です。 「こだわる」という程ではないのですが、本当に根っからの初学者相当なのでなにかのサンプルを見ながら作れることと、パーツが最初から揃っていてすぐに次のステップに進めることを重視しておりました。 URLを拝見しましたが、初学者には十分すぎる内容に見えますね…「スターターキット」という単語に惑わされてしまっていたかもしれません… >>411 お値段がかなり安いことは見て取れたのですが、パーツだけの画像が並んでいるので「自分に取り扱えるのだろうか」と弱気になってしまっていたかも知れません… 「公式のものを買っておけば安心」といった固定観念があったことは否めませんので、互換品?をご提示いただけるのは本当に勉強になります。 下調べが足りないことは痛感いたしました! >>412 仰るとおり、全くの初心者です。raspberry piなら触ったのですが、小型省エネサーバーになってしまったので工作らしい工作はサッパリですね… また、秋月電子で取り扱っていることを知りませんでした!電子工作といえば秋月という話は頭にあったのに何故思い出せなかったのか自分でも不明です… 上記のお二方からご提案いただいたURLを見直したあとで、週末秋葉原に寄ってみたいと思います!(別件の用事もあるのでついでに…) ラズパイ いじれるなら 互換品の pro mini +,usb serial とか wifi 付きのespなんちゃら組み合わせでもいいんじゃない スタータキット http://s.aliexpress.com/IJFZbUf6?fromSns=Copy to Clipboard (from AliExpress Android) ProMicro互換機(コネクタは丈夫なmini) http://s.aliexpress.com/eQRbMr6R?fromSns=Copy to Clipboard (from AliExpress Android) Nano互換機 http://s.aliexpress.com/6baYF3Qb?fromSns=Copy to Clipboard (from AliExpress Android) スターターキットとして買うならこのへんかな。 ブレッドボードに刺したり組み込んだりに便利なのはNanoとProMicroだと思う。 >>407 nanoとかmicroとか種類はいろいろあるけど、まずはunoから初めたほうがいいよ ネットにある配線画像の大半はunoだからね nanoとか他の互換機はunoに慣れてからのほうがいい nanoの良いところはブレッドボードに直にさせる事 atmega1284Pもなかなかいいよ unoやnanoでブートローダ書き込めるから 秋月で何か買い物する時あったらついでに買ってみるといい i/oはこんなにいらないけどプログラムメモリとram多いから結構融通が利く megaの互換機がそれに近い価格で買えるからコスパ最悪だけど。 英語が読めてRaspberryPi使うほどなら、USBコネクタ付きのESP32ボードが正解かも知れん。 esp32はATmegaと同じ感覚で扱うと簡単にブートローダ化けてリブートループに陥るから それをリカバリー出来る程度のスキルはいるよ それを楽しめる人にはオススメ Arduino初心者です。 Lチカは出来たので書き込む環境は整えました。 又、昔〜Cをやっていたのでソースコードはそこそこ理解できます。 やりたい事は下記です。 esp32同士でルーターを介さず直接やり取りは可能でしょうか? グッグても適切なモノにあたりません。 識者の方お願いいたします。 wifi経由でシリアル同士をトンネル接続的なことかな 片方APモードにしてESP32同士繋げればいいんじゃね そんなに難しいことではないがデバグはPCにシリアルポートが2つ要る ESP32自身のファームを自動化するにはそれなり知識要る(難しい)から それぞれATコマンド?で設定して使え 上の方で家電でAtmelマイコンを見かけた話が出ていたけど 掃除機にも使われたよ 少し前まではルネサスの8bitマイコンが使われていた所に Atmelが入り込んできた印象がある。 ディスコンの心配がまだなく信頼性もあり開発環境とライブラリの豊富さとなると 消去法でそうなったんかね ルネなんとかは長期供給が保証されている分やや高い設定だったマイコンを あっさりディスコンしやがったから二度と使わない。 俺が設計する製品に実装される事は一生ない。 長期供給が保証されてるマイコンて? そんな事をルネサスが本当に保証したの? このマイコンは車載向けなので高くしまーすって言い出した辺りで使うのやめたなー エンジニアと言ってもパワーデバイスの部類だが。 たまにインバータや誘導加熱の話が出て面白いので見てる ルネサスの8bitやらのマイコン類は大半がうちの所から移管された物だな。 >>439 ここの敷地内にルネサスの墓標があるらしい >>427 有り難う御座います。 ヒントを頼り勉強します。 ルネサス、8Bitで思いたした東北のほうの出張で偶然に中の人と少しだけ話したな〜 日立HD64180 よく使っていたな dueがメインになればarduinoの評価も大分変わる。 初心者からガチ勢まで使えるから。 ESP32ってMHz帯のPWM出力できるのか そりゃIHの制御に使って見たくなるわな 共振ではなくそれをソフト的にやる事にロマンを感じる IGBTを負電圧も使ってどこまで高速スイッチングできる試したら 5Aの負荷で壊れてしまった やっぱ構造的に絶縁層が増えている分故障しやすいのかな ゲートとエミッタショート ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる