工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduino Due Arbitrary Waveform Generator

コンポーネントと消耗品

>
Arduino Due
× 1

このプロジェクトについて

一般的な説明

これは現在、WindowsだけでなくLinuxでも動作します。

アナログ波の最大周波数:100kHz。方形波の最大周波数:42MHz。

デューティサイクルは実質的に0%から100%まで調整可能

構築は非常に簡単です。以下のインストールを参照してください。

これは2つの部分からなるプロジェクトです。ArduinoDueボード自体と、PCで使用するコントローラーGUIですが、Arduinoボードは、ポット、スイッチ、LEDを使用して単独で使用することもできます。

回路は必要ありませんが、オプションの出力保護回路が提供されており、Arduinoボードが誤って最大±30V程度の電圧に出力を接続するのを防ぎます。 (おそらくもっと)

PCのコントローラーGUIを使用すると、任意のウェーブを描画、編集、保存、開いてArduino Dueにアップロードし、USBポートを介して自動的に接続できます。包括的なヘルプファイルが含まれています。

「ステップ」ウェーブ機能により、必要に応じて、ウェーブ内の任意の数の鋭い(1サンプル)ステップを簡単に生成できます。さらに、代わりに出力を正弦波または三角波/鋸歯状に切り替えることができます。

また、同期または完全に独立した方形波も同時に生成されます。波は周波数や周期で制御できます。デューティサイクルは、実質的に0%から100%まで設定できます。または、パルス幅を一定に設定することもできます。 (もちろん、期間の範囲内で)

新しい設定は、PCのキーボードまたはプログラムのキーパッドを介して直接入力できます。または、「MODE」を押すとスライド調整が可能です。

アナログ波には正確なモードを使用できます。これにより、ダイレクトデジタルシンセシス(DDS)波形ジェネレーターに通常関連する「周波数ステップ」が回避されます。これにより、正確なモードがオンの場合、出力はArduinoクロック周波数の分周ではないため、これらの「周波数ステップ」間の周波数へのアクセスを許可することで、より正確な周波数が可能になります。

片方または両方の波の(対数)周波数掃引機能が含まれており、正または負のArduino出力を備えたタイマーもあります。

仕様

アナログウェーブ:

解像度は12ビットで、最大4096のウェイポイントがあります。

周波数範囲は0.05mHz(20,000秒)から100kHzです。

サンプルレート:(DMAを使用して1kHz以上)最大1.6MHz。

サンプルレート:(最大1kHz)400kHz。

Exactモードでのサンプルレート:(任意の周波数)400kHz。

最小パルス幅:(半波サイクル)

0%のデューティサイクルで:任意の周波数で350ナノ秒(約)。

0.01%のデューティサイクルの場合:最大2.5〜25マイクロ秒。 (約)

-周波数が1kHzを超え、正確なモードまたは同期がオンの場合、

-それ以外の場合は350ナノ秒。

方形波:

周波数範囲は0.05mHz(20,000秒)から42MHzです。

最小パルス幅:

同期:[周波数:0.05mHz(20,000秒)から100kHz]

0%のデューティサイクルで:任意の周波数で48ナノ秒。

0.01%のデューティサイクルで:2.5〜25マイクロ秒。 (約)

非同期:[0.093mHz(10,737秒)から42MHz]

1.3kHzから42MHzまで12nS。 (PWMを使用)

650Hzから1.29999kHzまでの24nS。 (PWMを使用)

325Hzから649.99999Hzまでの48nS。 (PWMを使用)

163Hzから324.99999Hzまでの96nS。 (PWMを使用)

163Hz未満:(割り込みを使用)

0%のデューティサイクルで:96ナノ秒。

0.01%のデューティサイクルで:5マイクロ秒。

インストール

GUIプログラム お使いのPCは「ポータブル」なので、インストールする必要はありません。

Windowsユーザーの場合は、.zipファイルを選択したフォルダーに抽出し、.exeファイルへのショートカットを作成するだけです。注:「DueAWGController-Win64.zip」ファイルは64ビットシステムを対象としていますが、32.zipファイルにはJavaが埋め込まれているため、いずれにせよより確実に機能することがよくあります。

Linuxユーザーの場合は、DueAWGController-LinuxXX.zipファイルをフォルダーに抽出し、DueAWGControllerLinuxファイルをダブルクリックするか、システムメニューに追加します。

Debian、UbuntuなどのOpenJDK 8(java 8)をインストールする必要がある場合があります。コマンドライン(ターミナル)で、次のように入力します。sudoapt-get install openjdk-8-jre(新しいバージョンは機能しない場合があります)

>

Arduinoに接続する前に、USBにアクセスするための許可を取得する必要がある場合もあります。次のように入力します:sudo usermod -a -G dialout $ USER

Raspberry Piなどの2つの「arm」ファイルも含まれていますが、テストされていません。動作するかどうか教えてください。

Arduinoスケッチ 特別なライブラリは必要ないため、スケッチをDueにアップロードするために必要なのは、PCにインストールされている通常のArduinoIDEだけです。 PCがArduinoDueを認識している場合(スケッチがアップロードされた場合はこれを行う必要があります)、GUIプログラムは起動時にArduinoを自動的に検出して接続するため、COMポートを設定する必要はありません。ただし、自動選択が失敗した場合は、手動COMポート選択が有効になります。

Arbitrary Wavesフォルダー(楽しみのために)には、開始に役立ついくつかのサンプルWaveファイルがあります。 GUIプログラムだけでなく、Arduino波形発生器は115200ボーに設定されたArduinoのシリアルモニターによって制御することもできます。タイプ ?助けを求めて。

または、制御にポット、スイッチ、LEDを使用したい場合は、Arduinoスケッチの最初にピン接続がリストされています。

ウェーブ出力ピンの接続 そこにもリストされています。または、Arduinoのピン3と7をリンクで接続するか、非常に慎重な場合は、値の小さい抵抗(47〜100オーム)を使用してください。ピン7からの方形波出力とDAC0からのアナログ出力を取得します。

コード

重要:[zip形式でダウンロード]ボタンをクリックしないでください。
ファイルをダウンロードするには、下の[続きを読む]をクリックしてください。注:[zip形式でダウンロード]をクリックすると、readmeファイルのみがダウンロードされます。https://github.com/Bruce-Evans/ArduinoDueArbitraryWaveformGeneratorAndController

回路図

この回路は完全に省略できますが、使用する場合は、立ち上がり時間と立ち下がり時間を大幅に増やすことなく、出力を少なくともプラスマイナス25Vの電圧に誤って接続することからArduinoを保護する必要があります。 D2とD3は大電流で高速回復ダイオードである必要があります-ショットキーダイオードは遅すぎることがわかりました。ヒューズ(F1およびF2)はポリヒューズにすることができます。

製造プロセス

  1. Arduino Spybot
  2. FlickMote
  3. 自家製テレビB-Gone
  4. マスタークロック
  5. Arduino Due TIC TAC TOE with Touchscreen
  6. JX Wave Generator
  7. Find Me
  8. Arduino Power
  9. Tech-TicTacToe
  10. Arduino Quadruped
  11. Arduinoジョイスティック