古いHDDモーターを回転させるにはどうすればよいですか?


11

私は、POVディスプレイプロジェクト(Gr。12 Computer Engineering)で使用するために1998年から古いIDE(40ピン)HDDを取り除き、スピンアップしようとしています。

問題は、HDDモーターがブラシレスDCであるため、グラウンドとソースの接続だけでは不十分です。私たちの電子機器の最大出力電流は約200mA(555、トランジスタ、その他のIC)であるため、それらを使用することはできません。

HDDとPCBをPSUに接続すると、モーターが停止するまで約15秒間だけモーターがオンになります。

HDDは完全に取り外され、モーターとPCBのみがベースにねじ込まれています。モーターには4つのピンがあります。私がそれを使って遊んだ時から、グラウンド用に1つのピンがあり、他の3つのピンは3ペアのコイル用だと思います。

HDD情報:

  • 富士通MPB3043AT
  • 12V DC 0.32A
  • 5V DC 0.5A

材料:

  • Arduino Uno
  • 古いHDD
  • PSU
  • ブレッドボード
  • 9Vバッテリー
  • 1.5Vバッテリー
  • 74HC164 8ビットsihftレジスタ
  • 555タイマーIC
  • 3904/3906トランジスタ
  • コンデンサー、抵抗器、ポテンショメーター

モーターを回転させるには、どのオプションを使用する必要がありますか(できればPSUなしで、PSU付きのオプションを利用できます)?IDEにオン/オフを切り替えるピンがありますか?

更新1: IDEケーブルをいじりました。ピン27(IOレディ)をピン2(グラウンド)に接続すると、モーターをPSUに差し込んだように回転し始めましたが、約10秒間しかありませんでした。そして、私はこの方法を使用してそれを再びスピンさせるために数分待つ必要がありました

更新2:モーターが5Vのみで12Vではないことがわかります。


3
IDEケーブルを介してHDDモーターを簡単に制御することはできません。ハードディスクドライブでは、モーターコマンドがIDEケーブルを介して直接送信されるフロッピードライブとは異なり、ドライブのコントローラーはクラスターの位置を計算し、モーターを作動させることが期待されています。
AndrejaKo 2013

すごい。それは私が考えたことですが、コンピュータはどのようにしてドライブを回転させ続けますか?
アレックス

1
HDDモーターのほとんどはBLDC(ブラシレス)モーターです。ブラシレスESCで駆動できます。最も安いのは、趣味のRC ESCを購入してPWMで駆動することです。
Gossamer 2013

@Alex Yan私はフィールドをあまり研究していませんが、そうではないと思います。ドライブがコマンドに正しく応答している限り、コンピュータがディスクが回転しているかどうかを気にしないと言った方がいいかもしれません。たぶん、ディスクへのいくつかのATAコマンドを偽造して、回転し続けるかどうかを確認することができます。ここにいくつかのATAコマンドのリストがあります。実際にコマンドを生成しようとすることがどれほど実行可能かはわかりません。Arduinoは、使用するには遅すぎる場合があります。
AndrejaKo 2013

1
PCのサウンドカードを使用してHDDモーターを実行する方法youtu.be/R9Q1XrFZr5E

回答:


3

HDDモーターのほとんどはBLDC(ブラシレス)モーターです。ブラシレスESCで駆動できます。最も安いのは、趣味のRC ESCを購入してPWMで駆動することです。このような何かで結構です。(カニぬいぐるみ25A)。

25Aは、ESCに損傷を与えることなく、その電流までモーターを稼働させるために使用できることを意味します。また、現在のESCの値を下げることもできます(ただし、これで十分です)。

ESCは3本のワイヤーで構成され、4本のワイヤーESCはありません。ワイヤーのペア間の抵抗を測定し、より高い抵抗のワイヤーのみを接続する必要があります。抵抗が低いものは未接続のままにします。


3

質問に正しく回答したかどうかはわかりませんが、HDDモーターを継続的に回転させる方法を尋ねていると思います(モーターを回転させる回路がまだ整っていない場合も同様です)。

AFAIK HDDモーターは、モーターのさまざまな回転位相で入力ソースに供給する3つのコイルを備えたステッピングモーターです。最適に動作するには、3相電源電圧を提供する必要があります。

ここでインターネット上に役立つ回路図を見つけました。そこに示されている回路図に基づいて独自のドライバ回路を作成できます。


そのリンクはラーニングジャーニーとしては問題ありませんが、最新のコントローラICは、フィードバックのためにモーターコイルからの信号を使用してモーターの「必要性」も感知します。モーターが実際に行っていることと一致するように駆動タイミングを変更します。(オールドコントローラーは、モーターの動作を決定するために別々のセンサーを使用することがよくあります。これはまだ行われていますが、はるかにまれです)。モーターの「OPenループ」制御はあまり良い考えではありません。
ラッセルマクマホン

3

手遅れにならないように。

ここに記事を書きました。基本的に、Arduinoを使用して3つのフェーズすべてに個別の信号を送信していましたが、これらの3つのフェーズが組み合わさって連続的な吸引力を与え、ローターを回転させます。これらの信号により、ダーリントントランジスタはより大きな電流を流してモーターを駆動できます。


2
EE.SEへようこそ!リンクは時間の経過とともに壊れる傾向があり、回答には価値がないため、通常、このドメイン外のリソースへのリンクに基づく回答はお勧めしません。あなたの答えが永続的な価値を持つように、ここに詳細情報を含めることができますか?
ジョー・ハス14

2

私は単に$ 3周波数ジェネレーター(aliexpress.com)とN-FETを使用し、一方の相を12Vに接続し、もう一方の相をドレインに、ソースを接地に接続しました。とても簡単です。2つの問題があり、自己始動しない(私は60Hzに設定して軽いスピンを与える)、そして加速制限があり、素早く移動できないか、同期が失われます。簡単なテストでは、1000Hzの周波数は問題ないことがわかりました(12Vで約6W入力)。更新:この単純なfetおよびfreqジェネレーターを使用して、ハードディスクドライブモーターを25,000 rpmで回転させました。https://www.youtube.com/watch?v=SRk651ThM0k

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