CAN通信の実際の開発環境について

組み込み事情にはあまり詳しくなく、現在RL78などを使ってCAN通信を色々試作しているのですが、

実際に量産するような製品でCAN通信をする場合、本当に一からCAN通信のコードを起こしているのでしょうか…

いくつかのケースを考えてみたのですが、多分以下の4パターンになるかと思います。

 

1) 毎回プロジェクトごとにコードを一から起こしている。

2) 自社開発のCANライブラリが手元にあってそれを使いまわしている。

3) CANのミドルウェア的なものを買ってきて、それを使っている。

4) 発注元から使用するミドルウェアを指定され、案件ごとに言われたミドルウェアで開発している。

 

CANの何らかの規格に適合していることを証明するコストを考えると、量産では3)か4)以外なさそうな気がするのですが、

実際の開発事情をもしよろしければ教えていただきたいです。

# つまるところ、1)や2)は避けたいのです…

  • kijoさんこんにちは。

    > RL78でCANコントローラなしでソフトだけでCAN通信

    とかいうおこがましいことは考えていなくて、CANコントローラーついてるマイコンが前提です。
    CAN通信自体はご指摘のような方法でなんとなく出来ているんです。


    > マイコンへの実装は非常に簡単なはずです。

    このへんの感覚が多分組込強い方と違っていて、

    「ハードウェアマニュアル読んで書けたけど、
     このマイコンでこのコード書いてるのきっと自分が最初じゃない」

    と思ってしまって、だったらもっと実績のあるミドルウェアなりライブラリなりがあるんじゃないかと
    探してしまうんです…

    ハードウェアマニュアル読んでても、このような基本機能の部分は
    すべての人が理解してそれぞれ独自に実装するところじゃないでしょと言うか、
    このマニュアル作れるならライブラリも一緒につくれるでしょ、というか…
  • imudakさん こんにちは! NAKAです。

    先回、結構いい加減な回答でした。今日、弊社の事業部でECUを開発されている方とお話する機会があったので聞いてみました。実際はもっと厳密な感じでした。各ベンダーさん(例えば車両メーカー)に納めるための標準ソフトがあるそうです。そして、弊社内に各ベンダーさんの仕様に対応した、標準ソフトを製作する専門の部署があり、新規CPUを採用した場合は、その部署に依頼し標準ソフトを制作してもらうそうです。つまり、その部署は依頼を受けた後にベンダーの仕様に合わせたソフトを1から作ることになります。
    P.S.
    量産計画のしっかりある事業部からの依頼は受けてくれますが、僕らのような、採用されるかわからない開発部署の依頼は受け付けてくれなさそう!!! 結局、自分で1から作れ!ということになります。(~_~;)
  • NAKAさん、こんにちは。


    わざわざお時間使っていただいてありがとうございます。
    「標準ソフトを製作する専門の部署」はちょっと驚きました。
    # 力技使えるって良いですね…

    そしてやはりなんとなく量産品は自作では無理な気がしてきました…

    しかし逆に考えると、そういった部署がある開発ベンダーさんに流されずに私の手元に来てしまった案件は、
    そこまで厳密にやらなくても良いのかも…