🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

Q&A

解決済

5回答

2438閲覧

CAN-BUSシールドについて

Alyn

総合スコア51

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

0グッド

0クリップ

投稿2019/11/10 03:12

ここで質問していいのか分かりませんが、質問させてください。

仕事で使用しているCAN-BUS Shield V2が故障して、CAN信号を送受信できなくなりました。
調べたところ、CANトランシーバー(MCP2551)の通電しないはずのCAN_HとGNDが故障により通電していました。

でも原因が全く分かりません。
Arduinoのソフトウェア担当なのでハードウェアについては全く専門外です。
Arduino同士で何時間もたくさんのデータの送受信を繰り返しても壊れたことは一度もありませんでした。

恐らくですが、相手装置の電圧か電流に問題があったのだと思います。

どうして壊れてしまったのか、またどういう環境に置くと壊れるのか教えてください。

接続はD-SUBポートを利用してCAN信号の送受信を行っています。
使用ポート番号は、3(CAN_H)、5(CAN_L)、2(GND)です。

よろしくお願いします。

<CAN-BUS Shield V2>
https://www.switch-science.com/catalog/3435/

<MCP2551>
https://www.sparkfun.com/datasheets/DevTools/Arduino/MCP2551.pdf

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/11/10 09:46

質問文だと通信動作実績があるのはArduino同士だけのようにも読めますが、Arduino⇔相手装置間で短時間でもCAN通信はできたのでしょうか。単にD-Subのポート番号が違っている可能性はありませんか?
Alyn

2019/11/10 10:29

取付時に動作確認は実施しました。問題なく通信していましたが、約1週間後に通信できなくなったと連絡を受けました。
guest

回答5

0

自己解決

故障原因はわかりませんでした。可能性として一番高いのが誤ったコネクタを接続して過電圧が加わったものと思われます。終端抵抗を1~5個の環境にしても故障はしませんでした。

投稿2020/06/09 13:39

Alyn

総合スコア51

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

使用ポート番号は、3(CAN_H)、5(CAN_L)、2(GND)

私の記憶違いでなければ、CAN-BUSのD-subはH,Lの2線でつなぐか、H,L,GND,電源(5Vなど)の4線でつなぐかと思います。Arduinoとシールドに対して、GNDが機器の大きなGNDに繋がれていてたりして変に吸い出されたかもしれません。HとGNDが短絡していることからもこのあたりに問題ありそうです。ともあれ、Arduinoとシールド、外側の機器との電源周りなどがわからないのではっきりしたことは言えませんが。
(システム全体の設計からH,L,GNDの3線接続をあえて選択されている場合は、釈迦に説法で御座いました。)

投稿2020/05/26 07:28

編集2020/05/26 07:32
masafuro

総合スコア19

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

オシロスコープでCANトランシーバー側の信号や電源端子を測定して定格を満たしているか確認するべきだと思います。
また、接続先の装置とGNDの電圧レベルが異なっている可能性はありませんか?

投稿2019/11/22 02:19

TaroToyotomi

総合スコア1448

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Arduinoのソフトウェア担当なのでハードウェアについては全く専門外です。

では、ハードウェア担当に投げましょう。

何時間もたくさんのデータの送受信を繰り返しても

せめて数週間連続稼働試験したときは大丈夫だったに、ぐらいならともかく、何時間で壊れるというのはそもそもなにか間違っていたんじゃないの? と言われてしまう次元ですね。

同じバスに繋がっている機器が同時に壊れたのですか? だったらサージが乗ったことを疑うのが最初かと思いますけれど。CANバスは私は扱ったことはないので知りませんが、バスの出入り口のサージ対策はちゃんと出来ているのですか? 仕事で使うのならそれくらい検討していますね?

投稿2019/11/10 07:37

thkana

総合スコア7703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Alyn

2019/11/10 07:59

ハードウェア担当はマイコンの知識はなく、装置の外装や配線などを構築?する人なのでわからないそうです。 稼働時間は正確には分かりませんが、累計1週間以上しても大丈夫でした。 壊れたのはCAN-BUS Shieldのみでした。 サージ対策は初めて聞きました。 単にD-SUBでCANバスに繋いでいるだけなのでしていないと思います。 ありがとうございます!調べてみます!!
thkana

2019/11/10 08:19

いっちゃあ何ですけど、仕事としてマイコンを扱う環境ではなさそうですね...
Alyn

2019/11/10 08:55

多分そうだと思います。
guest

0

たとえば、
乗ってるクルマが故障しました。今まで十年乗ってたけど故障したことはありません。
どうして壊れてしまったのか、またどういう環境に置くと壊れるのか教えてください。

と、誰かに聞かれたとしたら、あなたはそれに対しどう思うでしょう、そしてどう答えるでしょうか。

そう、私もきっと同じことを思ってますw

投稿2019/11/10 05:53

y_waiwai

総合スコア88038

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Alyn

2019/11/10 06:31

答えられないので困っています。 また、壊れた台数が1つだけでなく、3台です。 しかも新品が壊れました。 どういった条件で壊れるのか全く分かりません。 困っているのでそういった知識を持つ方の力を借りたいです。 原因究明のヒントがほしいです。
y_waiwai

2019/11/10 06:33

それならそれを質問に書くべきでは。 なぜわざわざ壊れた状況を隠すのか理解不能ですが
Alyn

2019/11/10 07:03

壊れたという事実は変わりません。どうして壊れたのかは分からない。特に隠す意図はなく、壊す方法を教えてほしいです。それと同じ状況を再現し、破壊を確認できれば解決です。
y_waiwai

2019/11/10 07:18

同じですか。だめだこりゃ
dodox86

2019/11/10 07:32

広く知見を求めにご質問を投稿されたのだとは思いますが、販売、製造元のサポートに問い合わせする事案のように思います。そもそも、Arduinoの一連のShield製品に、産業機器並みの耐久性と責任を販売、製造元に求めるのが前提違いの気はしていますが。(私自身の認識としては、Arduino系の製品を現場に投入するのは、At your own risk的位置づけと思っていましたが、今は違うのでしょうか)
Alyn

2019/11/10 08:05

開発しているものは、費用と工数の関係で用意できない装置があり、その通信を代用して試験を行う目的のものです。 責任についてはわかりませんが、何らかの対策はしておきたいです。 お金が潤沢にあればPCとVectorCANハードを用意すれば解決なんですけどね…… ライセンスとか色々高いみたいです
dodox86

2019/11/10 08:08

> 試験を行う目的のものです。 なるほど、試験、プロトタイプ、フィージビリティテストのような用途で、その背景であれば、理解できます。(そしてそのまま実運用に入るのがテンプレ)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問