メニュー English Ukrainian ロシア語 ホーム

愛好家や専門家向けの無料テクニカル ライブラリ 無料のテクニカルライブラリ


無線電子工学および電気工学の百科事典
無料のライブラリ / 無線電子および電気機器のスキーム

アルドゥイーノ。 アナログ入出力の操作は音で動作します。 無線エレクトロニクスと電気工学の百科事典

無料のテクニカルライブラリ

無線電子工学と電気工学の百科事典 / アマチュア無線デザイナー

記事へのコメント 記事へのコメント

デジタル I/O 操作により幅広いタスクを解決できますが、Arduino ボードのマイクロコントローラーに統合されたアナログ - デジタル コンバーター (ADC) の存在と、パルス幅を使用してアナログ信号を出力する機能が必要になります。変調 (PWM) は、アナログ センサーやあらゆる種類のアクチュエーターと連携し、制御信号に比例してオブジェクトに影響を与えます。

厳密に言えば、出力モードでは、すべての Arduino ポート ラインは XNUMX つの状態のみを持つ離散信号のみを送信できます。 しかし、マイクロコントローラーはこれらの状態を非常に迅速に変更し、方形パルスを生成することができます。 これらのパルスを慣性特性を持つデバイスに印加すると、そのデバイスに印加される電圧が一定でパルスの平均値に等しいかのように動作し、滑らかに変化し、論理レベルの高低の間でジャンプすることはありません。

PWM モードでは、ポートは一定の周波数と可変デューティ サイクル (パルス繰り返し周期と持続時間の比) のパルス信号を生成します。 多くの場合、デューティ サイクルの代わりに、その逆数であるデューティ サイクルで動作します。デューティ サイクルは、0 (パルスなし) から 100% (パルスが続き、合流し、休止せずに発生する) まで変更できます。 したがって、出力電圧は常に高くても低くても、その平均値はデューティ サイクルに比例します。 通常のマルチメーターをこの出力に接続すると、この値が表示されます (もちろん、パルス周波数が十分に高い場合)。

Arduino UNO では、出力 D3、D5、D6、D9、D10、および D11 は PWM モードで動作できます。 通常、基板上には「~」という記号または略語「PWM」が付いています。 他の変更を加えた Arduino ボードには多かれ少なかれそのような出力がある可能性があることに注意してください。

最も単純なケースでは、PWM を使用して LED の明るさを制御できます。 このデバイスには実質的に慣性はありませんが、人間の視覚には十分な慣性があり、一連の高速 LED フラッシュがデューティー ファクターに依存する明るさの連続発光として認識されます。

PWM 対応デジタル出力はデフォルトでこのモードを使用するように設定されているため、このモードで動作させるために pinMode() 関数を呼び出す必要はありません。 PWM 信号のデューティ サイクルを設定するには、標準のanalogWrite(N, M) 関数があります。N はピン番号、M は必要なデューティ サイクルに比例する数値です。 0 ~ 255 の範囲で指定する必要があります。0 はデューティ サイクル 255 (一定の低出力)、100 は 1% デューティ サイクル (一定の高出力) です。 M のいくつかの値に対する出力電圧のタイミング図、およびそれに応じたデューティ サイクル Kz を図に示します。 XNUMX.

Arduino。 アナログI/O操作、オーディオ操作
米。 1. 出力電圧のタイミング図

たとえば、「表」に示す表を考えてみましょう。 デジタル出力 D1 に接続された LED の明るさを徐々に増加させ、その後徐々に減少させる 9 つのプログラム。 これは、Arduino IDE に付属の example3.AnalogFading 標準サンプルに基づいています。 パルスデューティサイクルの値の列挙は、[1] ですでに検討されている for ループ演算子の助けを借りてここで実装されています。

1表。

Arduino。 アナログI/O操作、オーディオ操作

外部デバイスからアナログ信号を受信するために、Arduino には入力 A0 ~ A5 があり、これらはデフォルトで目的の状態に設定されているため、追加の初期化は必要ありません。 Arduino UNO に組み込まれている ADC は 10 ビットのバイナリ コードを生成し、0 ~ +5 V の範囲の入力電圧を 0 ~ 1023 (210-1) の整数に変換します。

変換結果を読み取るには、analogRead(N) 関数が使用されます。N はアナログ入力の番号です。

さまざまなセンサーをArduinoアナログ入力に接続でき、その出力電圧は測定値に比例します(可変抵抗器、サーミスター、フォトレジスターなど)。 ただし、アナログ入力に適用できるのは 0 ~ +5 V のみであることに注意してください。センサーの出力電圧が異なる間隔にある場合、または負極性の場合は、最初に信号を指定された間隔に配置する必要があります。 。 アナログ入力は 10 kHz 未満の周波数でポーリングされます [2]。これでは、一部の急速に変化する信号を分析するには不十分な場合があります。

アナログ入力があるため、Arduino を 0 ~ +5 V の定電圧を測定し、測定結果をコンピュータに送信するシンプルなデジタル電圧計に変えることができます。 これを行うには、表 2 に示すプログラムを Arduino にダウンロードするだけです。 XNUMX.

表2

Arduino。 アナログI/O操作、オーディオ操作

プログラム内の定数は、ADC 基準電圧 Uref (ミリボルト単位) と、ADC 出力コードを電圧 Ku に変換するための係数であることに注意してください。 係数値は、指定された基準電圧を 1023 で割ることによって計算されます。係数は通常、小数値であるため、Ki 定数は float (浮動小数点数) 型になります。 定数 Uref は、係数を正しく計算するために同じ型を持ちます。 式の右辺には定数しかないため、プログラム実行時に係数を計算するのはマイコンではなく、翻訳段階のコンパイラ自身です。

これらすべてにより、Arduino ボードの Uref ピンの基準電圧の正確な値をマルチメーターで測定し、定数 Uref を割り当ててプログラムに書き込むことで、電圧計の精度を高めることができます。 アナログからデジタルへの変換の精度を向上させる他の方法は、[3、4] にあります。

問題のプログラムが実行されているとき、ボード上の TX LED が点滅し、シリアル ポートを介した情報の転送を知らせます。 コンピュータが応答を送信していないため、RX LED は消灯しています。 内蔵のArduino IDEターミナルには、受信した情報(図2)、つまりガルバニック電池3332の電圧の測定結果が表示されます。

Arduino。 アナログI/O操作、オーディオ操作
米。 2.プログラムウィンドウ

Arduinoは光だけでなく音の信号も与えることができます。 これを行うには、ピエゾサウンドエミッター (ZP-1 など) をその出力の 3 つに接続する必要があります (図 XNUMX)。

Arduino。 アナログI/O操作、オーディオ操作
米。 3.ピエゾサウンドエミッターの接続

サウンドを操作するために、特別な関数トーン (N、F、T) が提供されます。ここで、N は方形パルスが生成されるピン番号です。 F - 音の周波数、Hz。 T - 音の長さ、ミリ秒。 最後のパラメータはオプションです。 それがない場合、音は継続的に聞こえます。 これをオフにするために、noTone(N) 関数が提供されています。

もちろん、圧電セラミックサウンドエミッターは高品質の再生デバイスとは言えず、マイコンによって生成される信号は長方形の形状をしていますが、それでもこれらの機能を使用することで簡単なメロディーを演奏することができます。 例を表に示します。 3. これは、Arduino IDE に含まれる 02.Digital oneMelody プログラムのサンプルを少し変更したものです。 メロディーの各音符の周波数を手動で設定するのは不便なので、#include ディレクティブを使用して、ファイルpitches.h をそのヘッダーでプログラムに接続します。 この操作は、このファイルの全文をプログラムに組み込むことと同じです。 この場合、演奏できる音名とその周波数のリストが含まれています。

表3

Arduino。 アナログI/O操作、オーディオ操作

サウンドエミッターは出力 D8 に接続する必要があります。

プログラムにとって、メロディーは同じタイプの定数 (周波数値) のシーケンスであり、それらは配列 (類似した要素の番号付きリスト) に結合されると便利です。 配列を宣言するときは、その要素をすべて列挙するか、その合計数を指定する必要があります。 配列要素の番号は常に XNUMX から始まることに注意してください。

この例では、16 つの配列が使用されています。 int Melody[] にはメロディーノートの名前が含まれ、int note Durations[] - ミリ秒単位の持続時間です。 配列の要素にアクセスするには、その名前を角括弧で囲んだシーケンス番号で指定します。 メロディー内のノート数を簡単に変更できるようにするには、sizeof(V) 関数を使用して計算します。この関数は、マイクロコントローラーのメモリ内で引数 (変数またはその配列) が占有するバイト数を返します。 この場合、メロディ配列の長さは 8 バイトで、その int 要素の長さは XNUMX バイトです。 したがって、Note 変数は値 XNUMX を取得します。これは、ノートを XNUMX つずつ再生して for ループの本体が繰り返される回数です。

Melody[] 配列に複数のノートを追加すると、それに応じて Note の値が変化します。 noteDurations[] 配列にこれらの音符の長さを忘れずに埋め込んでください。

メロディーは一度再生されるため、これに必要なすべての操作は setup() 関数内に配置されます。

再実行するには、Arduino ボードの RESET ボタンを押してマイクロコントローラーをリセットする必要があります。

この記事で説明されているArduinoプログラムは、ftp://ftp.radio.ru/pub/2016/09/aninout.zipからダウンロードできます。

文学

  1. レコムツェフ・D・アルドゥイーノ。 デジタル I/O 操作。 - ラジオ、2016 年、第 8 号、p. 51-54。
  2. Arduinoによるアナログ測定。 -URL:robotosha.ru/arduino/analog-measurements-arduino.html。
  3. Arduino 言語リファレンス。 アナログ I/O -analogReference()。 - URL: arduino.cc/en/Reference/AnalogReference。
  4. アナログリファレンス()関数。 - URL: arduino.ru/Reference/AnalogReference。

著者:D。Lekomtsev

他の記事も見る セクション アマチュア無線デザイナー.

読み書き 有用な この記事へのコメント.

<<戻る

科学技術の最新ニュース、新しい電子機器:

光信号を制御および操作する新しい方法 05.05.2024

現代の科学技術は急速に発展しており、日々新しい手法や技術が登場し、さまざまな分野で新たな可能性を切り開いています。そのような革新の 1 つは、ドイツの科学者による光信号を制御する新しい方法の開発であり、これはフォトニクス分野での大きな進歩につながる可能性があります。最近の研究により、ドイツの科学者は石英ガラス導波管内に調整可能な波長板を作成することができました。液晶層の使用に基づくこの方法により、導波路を通過する光の偏光を効果的に変化させることができる。この技術的進歩により、大量のデータを処理できるコンパクトで効率的なフォトニックデバイスの開発に新たな展望が開かれます。新しい方法によって提供される偏光の電気光学制御は、新しいクラスの集積フォトニックデバイスの基礎を提供する可能性があります。これにより、次のような大きな機会が開かれます ... >>

プレミアムセネカキーボード 05.05.2024

キーボードは、私たちの毎日のコンピューター作業に不可欠な部分です。ただし、ユーザーが直面する主な問題の 1 つは、特にプレミアム モデルの場合、騒音です。しかし、Norbauer & Co の新しい Seneca キーボードでは、状況が変わるかもしれません。 Seneca は単なるキーボードではなく、完璧なデバイスを作成するための 5 年間の開発作業の成果です。このキーボードは、音響特性から機械的特性に至るまで、あらゆる側面が慎重に考慮され、バランスがとられています。 Seneca の重要な機能の 1 つは、多くのキーボードに共通するノイズの問題を解決するサイレント スタビライザーです。さらに、キーボードはさまざまなキー幅をサポートしているため、あらゆるユーザーにとって便利です。 Seneca はまだ購入できませんが、夏の終わりにリリースされる予定です。 Norbauer & Co の Seneca は、キーボード設計の新しい標準を表します。彼女 ... >>

世界一高い天文台がオープン 04.05.2024

宇宙とその謎の探索は、世界中の天文学者の注目を集める課題です。都会の光害から遠く離れた高山の新鮮な空気の中で、星や惑星はその秘密をより鮮明に明らかにします。世界最高峰の天文台、東京大学アタカマ天文台の開設により、天文学の歴史に新たなページが開かれています。アタカマ天文台は海抜 5640 メートルに位置し、天文学者に宇宙研究の新たな機会をもたらします。この場所は地上望遠鏡の最高地点となり、研究者に宇宙の赤外線を研究するためのユニークなツールを提供します。高地にあるため空はより澄み、大気からの干渉も少なくなりますが、高山に天文台を建設することは多大な困難と課題を伴います。しかし、困難にもかかわらず、新しい天文台は天文学者に研究のための広い展望をもたらします。 ... >>

アーカイブからのランダムなニュース

オデュッセウスはイタケーに住んでいなかった 09.03.2006

過去 XNUMX 年間、オデュッセウスの生誕地であるイサカの正確な場所は謎のままでした。

その名前のギリシャの島がありますが、ホメロスの説明と一致する特徴はありません。 これにより、多くの歴史家は、オデュッセウスの帰国の話全体が単なる詩的なフィクションであると信じるようになりました.

しかし最近、ホメロスの作品が好きな英国のビジネスマン、ロバート・ビートルストーンは、彼が信じているように、オデュッセウスの宮殿があった場所を見つけました。 オデッセイで利用可能なこの表示に使用されるビートルストーン、および地理的、考古学的データ、衛星写真。

アマチュアの考古学者によると、宮殿はケファロニア島の西海岸、現在のイサカに最も近い、パリキ村の近くに位置していました。 どうやら、このケファロニア島はかつて独立した島でしたが、大地震の後、島とケファロニア島を隔てていた狭い海峡が埋められました。

その他の興味深いニュース:

▪ 無限にバッテリーを充電できるナノ電気燃料

▪ ロボット掃除機 Samsung POWERbot VR7000

▪ Amazon Kindle DX 電子書籍

▪ ストレスは危険ではありませんが、それに対する反応

▪ 言葉とその感情の色

科学技術、新しいエレクトロニクスのニュースフィード

 

無料の技術ライブラリの興味深い資料:

▪ 敷地内のセクション 個人の移動手段: 陸、水、空。 記事の選択

▪ 記事 ビデオ撮影のコンポーネントとしての照明。 ビデオアート

▪ 記事 ほとんどすべての住民が同じ家に住んでいる都市はどこですか? 詳細な回答

▪ 記事 締め縄。 旅行のヒント

▪ 記事 EPU ARKTUR-006-STEREO 用アンプコレクター。 無線エレクトロニクスと電気工学の百科事典

▪ 記事 電界効果トランジスタ KP150 - KP640。 無線エレクトロニクスと電気工学の百科事典

この記事にコメントを残してください:

Имя:


Eメール(オプション):


コメント:





このページのすべての言語

ホームページ | 図書館 | 物品 | サイトマップ | サイトレビュー

www.diagram.com.ua

www.diagram.com.ua
2000-2024