Centeでは、ミドルウェアを提供すると同時に、デバイスドライバの開発、各種ポーティング、OSやコンパイラの提供、さらには組込みソフトウェア開発におけるトラブルサポートなど、トータルで組込み機器開発技術を提供しています。組込み開発に幅広い知識と経験を持つエンジニアが、実際の機器やシステムを開発する中で培った組込み開発技術をベースに、皆様の組込み機器開発に必要なすべてをご提供いたします。
Centeは、LinuxやWindows等の多機能汎用OS環境とは異なり、組込み機器の限られた資源(限られたメモリ容量やCPU速度)の中で最大限のパフォーマンスを発揮できるように開発された、組込みソフトウェア群です。必要とされる機能単位ごとにパッケージされていますので、お客様は用意されたパッケージを用途に必要な構成に組み上げて行きます。
例えるならば、ブロックを積み上げるように、必要な機能「だけ」を組み上げていきます。
ネットワーク通信であればLANコントローラ内蔵のものがよいですし、USB接続を必要とする機器であれば、USBコントローラ内蔵のCPUがよいです。それぞれ、CPU外付けの組み合わせもあります。
uITRON4.0規格のOSを使うのが一般的です。Centeでは「CenteOS」という名称で販売されています。
価格は開発者ライセンス、プロジェクト毎ライセンスなど多数の契約形態がありますので、メーカーを選ぶ際に確認が必要になります。用途に合わせて選んだCPUに、対応実績のあるOSを選択してください。
ご不明の点があればCente.jpまでお問い合わせください。最適なCPUと実績のあるOSをご紹介します。
GNU Compiler Collection(GCC)という無償のコンパイラもありますし、CPUのアーキテクチャに最適化した有償コンパイラもあります。
今後ずっと使用することになるコンパイラですので、信頼性・実績のあるコンパイラをお選びください。
ご不明の点があればCente.jpまでお問い合わせください。CPUに合わせた実績のあるコンパイラをご紹介します。
CPUとOS、コンパイラが決まったら、CPU上でOSが起動できるはずです。
次に、「デバイスドライバ」を入手します。CPUメーカーが無償で公開しているものもありますし、Centeのパッケージに添付されているものもあります。入手が困難なデバイスの場合には、Centeで最適なデバイスドライバを開発し(有償)、提供することも可能です。
CPU上でOSが起動でき、USBやLAN等のデバイスドライバの用意ができました。
ここで、Centeミドルウェアが登場します。パッケージの取扱説明書を読み、パッケージの「ソースコード」(すべてソースコードで提供しています)をコンパイル環境に追加してください。
これで、マイコン上で動作するソフトウェアができあがります。
ここまで不明な点や問題などがありましたら、support_XXXatmarkXXX_cente.jp(_XXXatmarkXXX_は@にしてください)にご連絡ください。Centeは購入から半年間にわたり技術サポートを提供します。
お問い合わせから原則24時間以内に一次回答する専門のエンジニアが待機しています。お客様がアプリケーションを書ける状態になるまで、何回でもサポートします。実行時の動作ログや通信ログなどをご提供いただきながら、動くまでサポートします。Centeをお使いのお客様にご好評を頂いている充実のサポートサービスです。
下図のとおり、シリアルインタフェース(RS232C)でPC(独自アプリケーション)と接続して組込み機器を設定していました。シリアルインタフェースを搭載したPCが減って入手困難になったため、別の手法で組込み機器を設定する必要が生じた事例を用いて、Centeの導入をご紹介します。
シリアルインタフェース(RS232C)の代わりにCOMポート(USB)を利用します。
組込み機器のマイコンをUSBコントローラ内蔵のものに変更し、Cente USB Device COMを搭載します。PCと組込み機器とをCOMポート(USB)を使って接続することで、既存PCの独自アプリケーションから組込み機器の設定ができるようになります。
組込み機器のマイコンをLANコントローラ内蔵のものに変更し、Cente TCP/IPv4、 Cente HTTPdを搭載して、組込み機器内にWebサーバを立ち上げます。LANに接続したPCのWebブラウザから組込み機器のWebサーバにアクセスすることで、組込み機器の設定ができるようになります。Webブラウザを使用すれば、PCの独自アプリケーションをメンテナンスする必要がなくなる上、スマートフォンやタブレットからでも設定が可能になります。
(1-B)ではEthernet(LAN)を使用しましたが、組込み機器に搭載したUSBを経由しLANで通信することにより、1-Bと同様にWebブラウザを使った操作が可能になります。
組込み機器のマイコンをUSBコントローラ搭載のマイコンに変更し、Cente USB Device RNDISとCente TCP/IPv4、Cente HTTPd を搭載します。
PCと組込み機器をUSBで接続すると、PCはUSBを使ったLANが追加されたと認識するため、Webブラウザ経由で組込み機器のWebサーバにアクセスし、設定を行うことができます。
高価なEthernet(LAN(搭載例(1-B))を使用せず、USBで接続しWebブラウザを利用することで、物理的なコストを抑えることができ、さらに独自アプリケーションをメンテナンスする必要もなくなるため開発コストも削減できます。
TCP/IPの独自仕様で外部装置と通信していた組込み機器について、セキュリティ要求が高まり対応する必要が生じた事例を用いて、Centeの導入をご紹介します。
ファイアウォールを使用できなかった組込み機器にCente TCP/IPv4、Cente HTTPcを搭載し、独自仕様の通信をHTTPに変更します。
これによりHTTP(TCP 80番ポート)に限定したファイアウォールを設定し、セキュリティを高めることが可能です。
組込み機器にCente TCP/IPv4、 Cente HTTPc、Cente Compact SSLcを搭載することで、HTTPS(暗号通信・TCP 443番ポート)が実現できます。
これによりデータの改ざんや成りすましなどに対応し、更にセキュリティを向上させることが可能です。
Centeでは最新のセキュリティ情報に基づき、情報公開、脆弱性対応、アップデートパッケージを順次ご提供しております。
組込み機器からWindows搭載PCなどを経由してクラウド上にアップロードしていたデータを、直接アップロードするようにします。
組込み機器にCente TCP/IPv4、Cente MQTTc、Cente Compact SSLcを搭載します。
これにより、組込み機器からMQTTでクラウドサーバ(AWS IoT Coreなど)に接続し、データを直接保存できるようになります。
LAN、Webサーバ搭載の組込み機器で静的に表示されていた設定内容や情報を、Webブラウザ上でグラフィカルに表示して操作できます。
Cente TCP/IPv4、Cente HTTPd、Cente FileSystemを搭載し、React.jsやChart.jsを使用したWebアプリを組込み機器のWebコンテンツとして実装します。これにより、スマートフォンやタブレットから、グラフィカルな動的Webページにアクセスし、組込み機器の設定や状態の監視を実行することが可能になります。