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

JX Wave Generator – Arduino互換DDS発振器(OLEDディスプレイ搭載)

概要

電子工作とプログラミングを組み合わせ、安価で高機能な信号発生器を自作するプロジェクトです。Arduino NanoとAD9833 DDSモジュール、SH1106 OLEDディスプレイ、ロータリーエンコーダーを用いて、1Hz〜999,999Hzの正弦波・三角波・矩形波を出力できます。AC/DC結合切替、スイープ機能、画面セーバーなど実用的な機能を搭載し、単一のノブで全操作が可能です。

主な特徴

必要な部品

部品 数量 備考
Arduino Nano R31他のArduinoモデルでも動作可能
SH1106 I2C OLED 128×64ピクセル(4ピン)1
AD9833 DDSモジュール1
ロータリーエンコーダー(プッシュボタン付き)1基板実装タイプ推奨(プルアップ抵抗内蔵)
5Vリレーモジュール(オプション)1AC/DC結合切替用。ブレッドボード実装タイプが便利
リードリレー 5V 500Ω(オプション)1小信号用に最適。Arduinoピンに直結可能(10mA)
コンデンサ 10µF1
コンデンサ 10nF(ポリエステル)1
AC-DC 5Vステップダウン電源モジュール(オプション)1USB給電以外で動作させる場合

必要な工具

使用ソフトウェア・サービス

回路図

回路図と実装写真はプロジェクトページを参照してください。リレー駆動にはトランジスタやダイオードが必要な場合があります。Arduinoのデジタルピンは最大40mAまでなので、コイル抵抗120/150Ωの電磁リレーは直接駆動できません。リードリレー(500Ω)なら直結可能です。

警告: 商用電源(100-220V)を扱う際は感電・火災の危険があります。十分な知識と注意を持って作業してください。

ソフトウェア構成

コードは3つのファイルで構成されます:

主なライブラリ

動作モードと状態遷移

エンコーダーの回転・押下・長押しにより以下のモードを遷移します:

  1. LOGARITHMIC(対数モード) - 回転で周波数を対数ステップ(1, 10, 100, 1k, 10k, 100kHz)で増減。押下でOPTIONSへ。
  2. SINGLEDIGIT(桁編集モード) - 回転でカーソル左右移動(6桁+アイコン3つ)。押下で桁値変更(DIGITCHANGE)またはアイコン選択(OPTIONS)。
  3. SWEEP(スイープモード) - スイープ最小/最大/ステップ周波数の編集、開始/一時停止/停止。
  4. OPTIONS - 動作モード、波形、結合モードの選択。
  5. 各サブモード(OPTMODE, OPTWAVE, OPTCOUP, OPTSWEEP, SWEEPEDIT, DIGITCHANGE) - 詳細設定。

主要なアルゴリズム

AD9833制御

SPIライクなシリアルインターフェース(FSYNC=D9, CLK=D10, DATA=D11)で周波数・波形レジスタを書き込み。28ビット周波数レジスタへの分割書き込みと位相リセットを実装。

ビルド・書き込み手順

  1. Arduino IDEに上記ライブラリをインストール。
  2. 3つのファイルを同一フォルダに配置。
  3. ボード「Arduino Nano」、プロセッサ「ATmega328P (Old Bootloader)」を選択し書き込み。
  4. 起動後、エンコーダーで動作確認。必要ならEEPROMリセット(長押し)で初期化。

今後の改善案

ライセンス

MITライセンス。詳細はソースコードヘッダー参照。

製造プロセス

  1. Arduino Nanoで水滴を高速撮影 – DIYハイスピードフォトグラフィ
  2. Bluetooth操作のArduinoスパイボットを自作する
  3. FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
  4. 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
  5. 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
  6. ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
  7. Arduinoプロジェクトのための最適化電源ソリューション
  8. Arduino、Google Cardboard、Bluetoothで作るDIY VRスケートボード
  9. Arduino MegaとNEO-6M GPSモジュールの接続:ステップバイステップガイド
  10. Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作
  11. スマートArduino四足歩行ロボットの製作:ステップバイステップガイド