Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

ねえ

現在、プロジェクトでBDRV_xSx_DS_CALLBACKを使用しているときに問題が発生しています。 センサーレスFOCインフィニオンのリファレンスファームウェアを使用しています。 コードがこれらのコールバックに入るたびに、モーターは期待どおりに実行されず、コールバックは継続的に実行されているように見えます。

私の目的は、これらのコールバックを正常にクリアした後にモーター操作を開始することです。 これを実現するために、適切なメソッドを実装して割り込みコールバックをクリアしようとしました。

 

Mohit123_0-1691394208666.png

 

Mohit123_2-1691394427426.png

しかし、私の努力にもかかわらず、問題は解決しません。 したがって、この問題を克服するためにあなたの助けを大いに感謝します。

 

 

よろしくお願いいたします

モヒット

 

 

 

0 件の賞賛
1 解決策
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは @Mohit123 

MSOFETが過電流を検出し、すべてのMOSFETドライバがオフになった場合。 これに基づいて、モーターが停止します。 しかし、ソフトウェアは引き続き機能し、CCU6は実行されています。 フラグをクリアすると、BDRVとモーターが間違った方法で動作し、過電流障害が再びトリガーされます。 したがって、最初にstopmotor()をコールバックしてから、フラグをクリアしてモーターを再起動する必要があります。

元の投稿で解決策を見る

0 件の賞賛
3 返答(返信)
Translation_Bot
Community Manager
Community Manager
Community Manager

ねえ

 

void BDRV_Diag()関数をカスタマイズし、このコールバックからMotorStop()関数を削除しますが、それでもモーターは停止します。 また、過電流用の私の構成を添付する参考のために

Mohit123_0-1691397427079.png

 

0 件の賞賛
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは @Mohit123 

MSOFETが過電流を検出し、すべてのMOSFETドライバがオフになった場合。 これに基づいて、モーターが停止します。 しかし、ソフトウェアは引き続き機能し、CCU6は実行されています。 フラグをクリアすると、BDRVとモーターが間違った方法で動作し、過電流障害が再びトリガーされます。 したがって、最初にstopmotor()をコールバックしてから、フラグをクリアしてモーターを再起動する必要があります。

0 件の賞賛
Translation_Bot
Community Manager
Community Manager
Community Manager

こんにちは @Mohit123 

センサーレスFOCを使用したとき、インフィニオンのリファレンスファームウェア。これらすべて CAN 、電流 CAN トリガー割り込みが見られます。この割り込みの間、ソフトウェアはモーターを停止します。

LinGuohui_0-1691395769326.png

LinGuohui_1-1691395846503.png

ソフトウェアでは、HS1のみが機能として設定されており、他の位置に過電流が流れている場合は、モーターが停止します。

0 件の賞賛