はじめに
継続的インテグレーション(CI)は、開発者が少なくとも1日1回はコードを共有リポジトリに統合することを求める標準的なソフトウェア開発手法です。各ソフトウェアのコミットは自動的にビルドおよびテストされ、開発者が問題を早期に検出して修正することを可能にします。開発されたコードを定期的に統合することで、エラーを迅速に検出し、タイムリーに修正することができます。

挑戦
コンピュータおよび組込みソフトウェア開発では標準的な手法であるにもかかわらず、パワーエレクトロニクスソフトウェア開発への継続的インテグレーション(CI)の適用は、つい最近まで不可能であった。実際、制御ファームウェア/ソフトウェア開発者が日々の変更をバージョン管理リポジトリ(例:SVNやGit)にコミットした後、ビルドは必ずパワーラボでテストされる必要がある。
パワーラボでのデイリービルドのテストは非常に高価で、極めて時間がかかる(特にソフトウェア開発の時間定数と比較すると)。たとえ新しいソフトウェア/ファームウェアビルドのテストコストや複雑さを無視したとしても、ラボからテスト結果が戻る頃には、ソフトウェア開発チームは既に複数の新しいコードリビジョンをコミットしている。そしてバグ修正にはさらに複数のコミットが必要となり、プロセス全体が混乱する。
解決策
超高精度のハードウェア・イン・ザ・ループ(HIL)シミュレーションにより、パワーエレクトロニクスソフトウェア向けの完全な継続的インテグレーションプロセスが初めて実現しました。

パワーエレクトロニクス向けのCIは、HIL技術により極めて簡素かつ効果的になる:開発者は例えば業務終了時にコードを共有リポジトリに統合する。その後、新たなソフトウェアコミットは自動的にビルドされ、HILシミュレーションとインターフェースされた実コントローラハードウェアで構成されるHILシミュレータへ移植される。
電力不要、面倒なし。
これにより開発者は毎朝テストレポートを確認できるようになり、新しいコードの開発を続ける前に問題を早期に修正できるようになりました。
繰り返しになりますが、開発したコードを定期的に統合することで、エラーを迅速に検出し、タイムリーに修正することができます。
クレジット
著者 | Ivan Celanovic
ビジュアル | Typhoon
編集者 | Debora Santo