タグ付けされた質問 「arduino」

Arduinoが多く電子機器が少ない質問には、必ずArduino Stack Exchangeを使用してください。

2
Arduino UnoにデジタルPWMピンが6つしかない場合、最大12のサーボをどのようにサポートできますか?
よると、この: サーボライブラリは、ほとんどのArduinoボードで最大12モーター、Arduino Megaで最大48モーターをサポートします。Mega以外のボードでは、ライブラリを使用すると、ピンにサーボがあるかどうかに関係なく、ピン9および10のanalogWrite()(PWM)機能が無効になります。Megaでは、PWM機能を妨げることなく最大12個のサーボを使用できます。12〜23個のモーターを使用すると、ピン11および12のPWMが無効になります。 しかし、によると、この: デジタルI / Oピン14(そのうち6つはPWM出力を提供) では、PWM出力を提供できるデジタルI / Oピンが6つしかない場合、Unoは6つ以上のサーボをどのように制御できますか?
10 arduino  motor  pwm  servo  pins 

2
USB充電器は安定化電源ですか?
(Arduinoスタンドアロンタイプキットの)ATMega328に基づいて回路を設計しようとしていて、USBコネクタを追加して、汎用のUSB電話充電器タイプのデバイスからボードに電力を供給することを計画していました。 回路に電圧レギュレータを追加する必要がありますか、それとも充電器が十分な5V電源を供給すると仮定できますか? http://arduino.cc/en/Main/Standaloneで見つけた説明はレギュレーターを追加する方法を示していますが、それが必要かどうかはわかりません。

2
NPNトランジスタとArduinoを使用して9Vを切り替える
まず、私は電気技師ではないので、ご容赦ください。達成しようとしていることのスケッチはありませんが、うまくいけば説明できます。 私はNPNトランジスタ(具体的には2n2222)を使用しており、以下を実行しています。 9Vバッテリーをトランジスターコレクターに接続します トランジスタベースをArduino PWM出力ピンに接続します(間に1kトランジスタ) 9VバッテリーのアースをArduinoのアースに接続します 100msごとに1ずつ増加するforループ(i = 0-255)を書き込み、analogWrite(PWMOutputPin、i)を実行します。 次に、マルチメーターを使用して、アースとエミッターの脚の間の電圧を測定します。取得しているのは、0〜4.5ボルトの値ですが、バッテリーには約7.68 Vが直接測定されています。 十分な電圧がベースに送られている限り、トランジスタの目的はコレクタとエミッタの間に全電圧を送ることだと思いました。これは正しいです?私は何か間違ったことをしていますか?

3
長距離RF通信
Arduinoとさまざまな種類のセンサーを庭で遊んだ後、自由時間のために新しいプロジェクトを始めています。 私のアプリケーションには、約2 Kmの長距離デバイスが必要なので、RF通信を使用したいと考えています。 アイデアは、長距離RFIDとして、RFIDなしで、どのユニットであるかの識別のみを行うことです。 一部のデバイス/ユニットはどこかに置かれ、しばらくすると誰かがそれらを別の場所に移動する可能性があるため、RF経由で送信された情報のみを読み取り、それらがどこにあるのかを知りたいのです。私は彼らの本当の位置(GPS)を気にしません。なぜなら、彼らが私の一番上のウィンドウから彼らがどこにいるかを見ることができるからです。私はそれらがどれであるか知りたいだけです。 私は約315/434 MHzを読んでいますが、高い電力消費なしではこの距離を得ることができないようです。 低い周波数(150 MHz)はどうですか?AM / FMラジオのライセンス周波数帯域を超えています。 私は村に住んでいます-私は実験で遊ぶためにたくさんの地形と2 Km以上の見通し線を持っています。 編集: @Hoppoのアイデアは、まさに私がやろうとしていることです。また、送信機は小さなバッテリーで動くので、「エネルギーハーベスティング」を実現できます。 また、送信機は十分に小さく、邪魔にならないようにアンテナなしで犬と一緒に遊ぶのを避けなければなりません。 受信側では、より大きなアンテナまたはより多くの電力が必要かどうかは問題ではありません。PCまたは電源に直接接続されます。 さらに、@ Hoppoが言うように、私は「ping」、識別子とおそらくバッテリーレベルを含むメッセージのみを送信したいので、データレートは9600bpsより低くなる可能性があります。
9 arduino  rf  wireless 

2
Wi-Fiシールドを使用してArduinoを再プログラムできますか?
私のArduinoは水族館のいくつかのライトに接続されており、LAN上のWebブラウザーからそれらを制御できます。ArduinoでプログラムをUSB経由でマシンに接続しなくても変更できるかどうかは、少し不便です。Wi-Fi接続を利用できる方法がいくつかあるはずです。 Pololuのwixelシールドを使用してプログラムをワイヤレスで送信しました(シリアルポートラジオとして機能するだけです)が、これは私のWiFiシールドとは異なるテクノロジです。 WiFiでこれを行う方法を誰かが知っていますか?WiFiシールドのフラッシュメモリに新しいコードをアップロードすると、フラッシュメモリからブートロードされる可能性がありますか?どうすればいいのか、それが可能かどうかわかりません。 おそらく、まったく異なるアプローチの方が簡単でしょうか?
9 arduino  wifi 


2
ATtiny84 / 85/2313のリセットピンを明確化
私は2つの質問があります。誰かが簡単なTrue / Falseで明確にできることを望んでいました。ATtiny85 / 85/2313を使用する場合、リ pin ットピンはVCCに接続される10k抵抗器に接続されます。 AVR 6ピンプログラマーでプログラミングする場合、ATtinyのリセットピンをVCCへの10k抵抗に接続する必要がありますか? Arduino Unoを使用してATtinyをプログラムする場合、attinyのリセットピンはD10に接続されます。リセットピンはさらに、VCCへの10k抵抗に接続する必要がありますか? または要約すると、ATtiny84 / 85/2313のリセットピンは常にVCCへの10k抵抗に接続する必要がありますか?

4
PNPトランジスタとエレクトレットマイクを使用して、Arduinoの非反転出力を取得できますか?
エレクトレットマイクから一般的なサウンドレベルを読み取るだけです。NPNトランジスタを使用した回路図をいくつか見ましたが、これは反転出力を提供します(静かな場合は〜5V、大音量の場合は〜0V)。 次に例を示します。 ただし、非反転出力が必要です(線形動作、超静音入力は〜0V、超大音量入力は〜5V)。ソフトウェアでこれを簡単に修正できることに気づきましたが、それはある意味私には逆に思え、PNPトランジスタを使用した非反転出力の例を見つけることができません。 珍しいことを超えてこれの理由はありますか?可能であれば、エレクトレットマイクとPNPトランジスタの回路図を提供して、静かなときに〜0V、大音量のときに〜5Vを与えることはできますか? さらに、これがそれほど一般的ではない、または望ましくない理由がありますか?NPNはPNPよりもはるかに頻繁に使用されているようですが、これはなぜですか? 編集する NPNプリアンプからの出力として何が得られるか、つまり無音の場合は0Vであり、+ /-Vin / 2の場合は、かなり混乱していたようです。代わりに、次のようにします。 無音時は0V、中程度のサウンドレベルでは〜2.5V、最大サウンドレベルでは〜5V。これは、ADCによって簡単に「サウンドレベル」に読み取ることができ、ほとんど何もする必要がありません。ただし、0 V未満または5 Vを超える電圧をアナログコンパレータに供給できません。上記のエンベロープ検出器が必要なようですが、0Vから2.5Vまでしか取得できません。完全な0Vから5Vまで、0Vは「静か」、5Vは「うるさい」に、どのように線形に変化させることができますか?

2
統合平面パッチアンテナを備えたXバンドレーダーモジュールの指向性を改善できますか?
必要に応じて、多くの詳細が提供されます。 私は Arduino(および最終的にはただのATMEGA *チップとその安全バディ)によって駆動されるリモート近接センサーをいじくり回しており、これまでのところかなり良いプロトタイプを持っています。それはPIRモジュールのように動きを拾い、それを信号で伝えます、それはArduinoが5Vソレノイドを介して機械的なノッキングに変わります。PIRモジュールは断熱ガラスの背後では(予測通り)機能せず、外部ユニットにするには、現時点で投資するよりも多くの作業(およびバッテリーの電力管理)が必要です。 物事を簡単にするために、ユニットを屋内に保ち、耐候性を回避できるように、xバンドレーダーモジュールを試すことにしました。動きを検出するために、レンガの壁を通してマイクロ波デバイスを指し示す魅力は、非常に強力でした。:-)私はこのパララックスモジュール(データシート)を使用しています。 問題は、感度ポットが完全に下に設定されていても、アンテナ側に加えて、ユニットがその背後の動きを拾っていることです。データシート(およびそのフィールドを表すグラフィックス-用語がわからない)を見ると、これは予想される動作のようです。しかし、それを外向きにできるように、(デバイスに対して)前向きのビームに焦点を合わせたいです。 何らかの導波管が必要だと思うほど十分にわかっていますが、金属(アルミホイル、カットされたコーラ缶、1950年代の円錐形のペンダントランプのシーリングファンに置き換えたもの)で背中を塞ぐ試みはすべて失敗しました。モジュールはその後ろの動きを拾い続けます。私は実際にそれを盲目にすることができることを確認するためだけに、すべてをアルミニウムのプロジェクトエンクロージャーに入れました。どういうわけか、エンクロージャをまっすぐ進み、とにかく動きを拾うようです。これは予想外でした。私は干渉を疑いましたが、検出は実際の動きとのみ一致します。 だから:何が良い導波路を作るのですか?動き検出のために、パルスドップラーレーダーを適度に狭いビームに集束させる問題にどのように取り組みますか?あなたが提供できる洞察をありがとう。上記のいずれかを具体的に説明したり、明確にしたりできます。 注: テーマはもっと具体的になる可能性がありますが、これは私の最初のエレクトロニクスプロジェクトであり、紛らわしいほど間違っているのではなく漠然としています。:-} 干渉補遺: なんらかの干渉が発生していないと私はまだ確信していません。(まだ)オシロスコープがないので、この理論をテストする方法がわかりません。 このスレッドは、私のアプローチに欠陥があることを示唆しているようです。明らかに、モジュールの状態は、ノイズと時間のしきい値を持つアナログピンから読み取る必要があります。私はデジタルピンHIGH / LOWでそれを読んでいます。

1
合成されたROMコアを使用した単純なテストベンチのシミュレーション
私はFPGAの世界にまったく新しいので、4ビットの7セグメントデコーダーという非常に単純なプロジェクトから始めようと思いました。私が純粋にVHDLで書いた最初のバージョン(それは基本的に単一の組み合わせselectであり、クロックは必要ありません)は機能しているようですが、ザイリンクスISEの「IPコア」の要素を試してみたいと思います。 今のところ、「ISE Project Explorer」GUIを使用しており、ROMコアを使用して新しいプロジェクトを作成しました。生成されるVHDLコードは次のとおりです。 LIBRARY ieee; USE ieee.std_logic_1164.ALL; -- synthesis translate_off LIBRARY XilinxCoreLib; -- synthesis translate_on ENTITY SSROM IS PORT ( clka : IN STD_LOGIC; addra : IN STD_LOGIC_VECTOR(3 DOWNTO 0); douta : OUT STD_LOGIC_VECTOR(6 DOWNTO 0) ); END SSROM; ARCHITECTURE SSROM_a OF SSROM IS -- synthesis translate_off COMPONENT wrapped_SSROM …

1
ESCの使い方
RC関連のモジュールは初めてです。今日、HobbywingのSkywalker 20AブラシレスESCを手に入れました。マニュアルはこちら。 ブラシレスアウトランナーモーターもあります (HL3512) 私はEscをプログラムするためのデバイスを持っていません(売り手もそのような要件について言及していません)。 マニュアルビープ音パターンを聞くことによって、プログラミングについて話しています。しかし、そのためには、escをフライトコントローラに接続する必要があるようです(スロットルの位置などについて話します)。しかし、私にはフライトコントローラーはありません。 私が持っているものでESCを使用する方法を教えてもらえますか?(私は2200mAh LiPoとarduino megaも持っています)

4
Arduinoでの16x2 LCDディスプレイのデバッグ
標準の16x2 LCDディスプレイ(日立HD44780と互換性があると思います。以下の概要と仕様を参照してください)は、ここで説明するように、4つのデータピンを使用してArduino Unoに接続しますが、2x 220オームの抵抗を並列に追加しました(つまり、 110オーム抵抗)をピン16(バックライトグランド)に接続し、ポットを静的抵抗に置き換えて、Voで4Vを作成します つまり、RWはグランドに配線され、RS、Enable、Data4-7はArduinoピンに接続され、Data 0-3はフローティングです。 Arduinoの別のピンに接続されている他のもの(センサー、光絶縁されたSSRを備えたトランジスター、主電源リレー、いくつかのボタン)があります。私が使用するコードは、1秒間に数回テキストをディスプレイに書き込み、通常、ディスプレイは完全に機能します。 ただし、リレーが閉じると(約10mAかかり、Arduinoピンの1つから順に制御されるトランジスタによって制御されます)、LCDが文字化けすることがあります。通常は次にリレーが閉じるまで文字化けしますが、リレーが開いたとき、またはリセットのために開閉がさらに数回繰り返された後も時々発生します。リレーが開くか閉じると、常にガーブリングが開始および停止します。 「文字化け」とは、文字化けした後にそれに書き込むたびに、英語の文字を書くのではなく、通常はデータシートで識別できない文字列を取得することを意味します(一部は可能です)。この文字化けした文字列は、新しいテキストをLCDに書き込むと、画面に沿って左に移動する傾向があります。 Arduino自体が混乱しているのではなく、同じテキストを同時にシリアルモニターに書き込んでいるため、文字化けしていません。 それ以来、RWピンをArduino出力に接続し、Data0-3をグラウンドに接続する実験をしましたが、これは役に立ちません。9VバッテリーまたはUSBでデバイス全体に電力を供給しましたが、役に立ちません。電池を交換しました…変化はありません。 動作しているように見える唯一のことは、リレーに接続された負荷がないことですが、それは目的を無効にします:-) シグナルアナライザーや、マルチメーター、ラップトップ、Arduinoよりも高度なものはありません...これをデバッグするのに役立つヒントはありますか? LCDサマリーシート:http : //oomlout.com/LCDD/LCDD-SUMM-BC1602A.pdf LCD仕様:http : //oomlout.com/LCDD/LCDD-DATA-BC1602A.pdf 文字化けしたテキストの例:
9 arduino  lcd 

4
Arduinoでタイマー割り込みを作成するにはどうすればよいですか?
Arduinoで時間遅延割り込みを作成しようとしています。これは内部割り込みなので、interrupts()関数を使用したいと思います。 例:割り込みのタイミングのみでライトを点滅させたいとしましょう。 サンプルコードがありますが、外部割り込み(attachInterrupt())を使用しています。内部割り込みを使い続けたいのですが。

3
より高速なプロセッサ/クロックでより多くのコードを実行できますか?
私は16Mhzで動作するATmega 328で実行するプログラムを書いています(ご存知ならArduino Duemilanove、それはAVRチップです)。 100マイクロ秒ごとに実行される割り込みプロセスがあります。100マイクロ秒の1ループで実行できる「コード」の量を計算するのは不可能だと思います(おそらくアセンブリに変換されてからバイナリイメージに変換されるCで書いています)。 また、これはコードの複雑さに依存します(たとえば、巨大な1つのライナーは、いくつかの短い行よりも実行が遅くなる可能性があります)。 私の理解は正しいですか、クロックレートまたは16Mhzのプロセッサは1秒あたり1600万サイクルを実行します(つまり、1マイクロ秒あたり16サイクル16,000,000 / 1,000 / 1,000)。したがって、100マイクロ秒のループでさらに多くのことをしたい場合、72Mhzバージョンのようなより高速なモデルを購入すると、マイクロ秒あたり72サイクル(72,000,000 / 1,000 / 1,000)になりますか? 現在のところ、実行が少し遅すぎます。つまり、ループを実行するのに100マイクロ秒より少し長くかかります(正確にはどれだけ長く言うのが難しいか、段階的に遅れます)。もう少し実行したいのですが、これはより速いチップを得るための健全なアプローチですか、それとも私は怒っていますか?

3
別のタブ/ヘッダーファイルでSerial.printを呼び出す
Arduino 0022でプログラムを書いています。 呼び出しSerial.printlnはメインのスケッチコードでは問題なく機能しますMenu.hが、別のタブにあるヘッダーファイル " "で使用しようとすると、エラーが発生します。 AppController.cpp:2からインクルードされたファイル: Menu.h:コンストラクター 'Menu :: Menu()': Menu.h:15:エラー: 'Serial'はこのスコープで宣言されていません Serial.printlnスケッチコード以外で使用するにはどうすればよいですか?
9 arduino  c 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.