AVR ATtiny2313、KR514ID2、フォトカプラー用のDIYデジタルタコメーター

AVR ATtiny2313、KR514ID2、フォトカプラー用のDIYデジタルタコメーター



こんにちは

AVR ATtiny2313 KR514ID2のシンプルなデジタルタコメーターの回路と、私が設計したフォトカプラーに注目します。

すぐに予約します。インターネットにも同様のスキームがたくさんあります。 各実装には長所と短所があります。 おそらく誰かが私の選択肢にもっと合うでしょう。



おそらく、 それらから始めましょう 割り当て。

タスク :機械の電気モーターの速度を制御するために、デジタルタコメーターを作成する必要があります。

導入条件 :レーザープリンターの20穴用の既製の参照ディスクがあります。 壊れたプリンターからの多くのオプトカプラーが利用可能です。 4,000〜5,000回転/分の平均(稼働中)回転。 表示される結果の誤差は、±100回転を超えてはなりません。



制限 :コントロールユニットの電源は36Vです(タコメーターはコントロールユニットと一緒に1つのハウジングに取り付けられます-詳細は下にあります)。



少し叙情的な余談。 これは私の友人の織機です。 機械にはPIK-8電気モーターが装備されており、その速度はインターネット上で見られる修正されたスキームに従って制御されます。 友人の要請で、機械用のシンプルなタコメーターが開発されました。



当初、回路でATMega16を使用することが計画されていましたが、条件を考慮した後、4 MHzの周波数で内部(RC)ジェネレーターで動作するATtiny2313に限定することにしました。



一般的なスキームは次のとおりです。







どうやら、複雑なことは何もない。 バイナリコードを7セグメントコードに変換するには、KR514ID2デコーダーを使用しました。これにより、3つの利点が同時に得られます。





デバイスはブレッドボード上で組み立てられました。 このために、ビンの中に横たわっていた動作不能の電子レンジからのボードが解体されました。 デジタルLEDインジケータ、キートランジスタ(VT1〜VT4)および制限抵抗器(R1〜R12)はキットとして取り扱われ、新しいボードに移されました。 デバイス全体が必要なコンポーネントとともに組み立てられ、30分で煙が切れます。 KR514ID2超小型回路には14の正のパワーフットと6のマイナスのパワーフットがあるという事実に注意を促します (図に示されています) 。 KR514ID2の代わりに、5Vの電源で他の7セグメントバイナリコードデコーダーを使用できます。 手元にあったものを取りました。

デジタルLEDインジケータの結論「h」と「i」は、数字の間の中央の2つのポイントに責任があり、不必要に接続されていません。

組み立てとファームウェアの後、インストールエラーがなければ、デバイスは電源を入れた直後に動作を開始し、構成する必要はありません。



タコメータのファームウェアを変更する必要がある場合、ボード上にISPコネクタが提供されます。



図では、公称30 kOhmのプルアップ抵抗R12が特定のオプトカプラーに対して経験的に選択されています。 実践が示すように、オプトカプラーごとに異なる場合がありますが、平均値が30 kOhmであれば、ほとんどのプリンターオプトカプラーの安定した動作が保証されます。 ATtiny2313のドキュメントによると、内部プルアップ抵抗の値は、マイクロコントローラーの特定のバッチの実装に応じて20〜50 kOhm(ATtiny2313のパスポートの177ページ)であり、完全に適切ではありません。 誰かが回路を繰り返したい場合、スターター用に内部プルアップ抵抗を含めることができます。おそらく、フォトカプラとMKで機能します。 うまくいきませんでした。



これは、プリンターからの典型的なオプトカプラーのようです。





フォトカプラLEDは、1Kの制限抵抗を介して給電されます。この抵抗は、フォトカプラ回路基板に直接配置しました。

回路内の電圧リップルをフィルタリングするために、220μFx 25Vの電解コンデンサ(手元にあった)と0.1μFのセラミックコンデンサの2つのコンデンサがあります(マイクロコントローラを切り替えるための一般的な回路はATtiny2313パスポートから取得されます)。



ほこりや汚れから保護するために、タコメーターボードは自動車用ニスの厚い層で覆われています。



コンポーネントの交換。

4桁、2つのデュアル、または4つのシングルのLEDインジケータを適用できます。 最悪の場合、インジケータを個別のLEDに取り付けます。



KP514ID2の代わりに、KP514ID1(内部に電流制限抵抗を含む)、または564ID5、K155PP5、K155ID9(1つのセグメントのレッグの並列接続)、またはその他のバイナリから7セグメントへのコンバーター(マイクロサーキットピンの接続に対応する変更を使用)を使用できます。



インストールがATMega8 / ATMega16 MKに正しく転送される場合、このファームウェアはATtiny2313上でも動作しますが、コードを修正(定数の名前を変更)して再コンパイルする必要があります。 他のAVR MKについては、比較は行われませんでした。



トランジスタVT1-VT4-キーモードで動作する低電流。



動作原理は 、フォトカプラから1秒間に受信したパルスの数をカウントし、それらをカウントして1分あたりの回転数を表示することに基づいています。 このために、T1入力(PD5ピン9 MK)で受信したパルスのカウントモードで動作する、内部のタイマー/カウンター1カウンターが使用されました。 安定性を確保するために、プログラムされたチャター抑制モードが有効になっています。 秒は、Timer / Counter0と1つの変数によってカウントされます。



私が詳しく述べたい回転の計算は 、次の式に従って行われます。

M = (N / 20) *60,





ここで、Mは1分あたりの計算された回転数(60秒)、Nは1秒間のフォトカプラーからのパルス数、20は参照ディスクの穴の数です。

合計、式を簡略化して、以下を取得します

M = N*3.





しかし! マイクロコントローラATtiny2313には、ハードウェア乗算の機能がありません。 したがって、オフセット付きの合計が適用されました。

メソッドの本質を知らない人のために:

番号3は次のように展開できます

3 = 2 + 1 = 2 1 + 2 0

数値Nを取得する場合、左に1バイトシフトし、さらに左に0バイトシフトした別のNを追加します-数値Nを3倍します。

ファームウェアでは、2バイト乗算演算用のAVR ASMのコードは次のとおりです。



Mul2bytes3:





CLR LoCalcByte //





CLR HiCalcByte





mov LoCalcByte,LoInByte // Timer/Counter1





mov HiCalcByte,HiInByte





CLC //





ROL LoCalcByte //





ROL HiCalcByte





CLC





ADD LoCalcByte,LoInByte //





ADC HiCalcByte,HiInByte





ret







性能チェックと精度測定は次のように実施されました。 20個の穴のある段ボールディスクをコンピューターのクーラーファンに接着しました。 マザーボードのBIOSを介してクーラー速度を監視し、タコメーターと比較しました。 偏差は3200回転/分の周波数で約20回転で、0.6%です。







実際の不一致は20回転未満である可能性があります。 マザーボードの測定値は、5回転以内に四捨五入されます(特定のボードの個人的な観察による)。

測定の上限は9,999 rpmです。 測定の下限は、理論的には±10回転ですが、実際には測定されませんでした(1秒間にフォトカプラーからの1パルスが1分間に3回転を与えるため、誤差を考慮して、理論的には1分間に4回転以上から速度を正確に測定する必要がありますが、実際には、インジケータは少なくとも2倍にする必要があります)。



栄養の問題について説明します。

回路全体は5V電源で駆動され、デバイス全体の推定消費量は300 mAを超えません。 ただし、参照条件に従って、タコメーターは構造的にエンジン回転数制御ユニット内に配置する必要があり、LATRから36 Vの定電圧がユニットに供給されます。偶発的な過電圧から保護するための制限抵抗とツェナーダイオード)。 MC34063と同様に、ステップダウンコンバーターモードでPWMコントローラーを使用する方が論理的ですが、私たちの都市ではそのようなものを購入するのは問題があるため、見つけたものを使用しました。



タコメーターボードと完成したデバイスの写真。



他の写真








残念ながら、今ではマシンで写真を撮る方法はありません。



ボードのレイアウトと最初のテストアセンブリの後、デバイスの入った箱は塗装に行きました。



AVR ASM のソースコード 、AVR Studio4プロジェクトファイル、およびコンパイルされた.HEXファイルは、 http ://djkiridza.org.ua/ldd/taho-v029.zipにあります。

ミラーはこちら: http : //fileobmen.org.ua/DJ_Kiridza/taho-v029.zip



電源を入れた直後にタコメーターが動作しなかった場合、明らかに正しくインストールされている場合:



1)マイクロコントローラーの動作をチェックし、内部ジェネレーターから動作することを確認します。 回路が正しく組み立てられている場合、4つのゼロがダイヤルに表示されるはずです。



2)フォトカプラからのパルスのレベルを確認し、必要に応じて抵抗R12の値を選択するか、フォトカプラの接続回路を交換します。 MK内部プルアップ抵抗の有無にかかわらず、オプトトランジスタをマイナスにプルアップして再接続するオプションが可能です。 キー(反転)動作モードでトランジスタを使用することもできます。



PS顧客の要求に応じて、タコメーターは1つのゼロではなく、フォトカプラーからのパルスがない場合は4つを表示します。



PPSタコメーターは、エンジン速度の変化に非常に敏感であることが判明しました。 わずかなリップル電圧は速度の偏差を引き起こし、タコメーター画面にすぐに表示されます。 将来的には、顧客が必要に応じて、表示された結果を±50回転以内に四捨五入する処理を行う予定です。



All Articles