| ■ 研修対象 | 新入社員(エンベデッド系) |
| ■ 研修期間 | 2ヶ月 |
| ■ 研修の特徴 | 上流工程から下流工程までの一貫教育により、OJTと同等以上の高い教育効果が生み出されます。 また、技術者としてのスキルはもとより、知識・技術の獲得方法、プロジェクトの中での振る舞い、文書技法、プレゼンテーションなど、仕事を進める上での重要なノウハウも身につきます。 また、エンベデッド特有の技術であるハードウエア、アーキテクチャ設計、デバック治具の設計と作成など、開発に必要な基礎技術と、その開発工程・プロセスを体得することが目的の研修です。 |
| 回 | テーマ | 項目 | 内容 | 目的・キーワード | 対応(*1) | 成果物等 |
| 1 | コンピュータ システム概論 |
キックオフ | 研修内容、研修日程の説明 | モチベーションの喚起 | 組込みソフトとは 組込みソフトの特徴 |
決意表明書 |
| エンベデッド開発の特徴 | オブジェクト指向の開発プロセスと開発対象分野 | |||||
| デジタル信号とは | デジタルとアナログ信号 | 同期回路とクロック | ||||
| 論理演算のしくみ | デジタル信号と論理演算 | |||||
| データの表現形式 | ブール、整数、浮動小数点 | 数値表現、 2進数、16進数、 HEX、BCD |
||||
| 2 | CPUと周辺チップ | CPUの動作 | マシンサイクル、フェッチサイクル | CPU(MPU) | オープンループ制御によるファンコントロールプログラム | |
| バスアーキテクチャ | エクスキュートサイクル、パイプライン、キャッシュ、分岐予測 | |||||
| 割り込み処理と 割り込みコントローラ、 タイマー |
バスと競合、コンペアマッチと割り込み | 割込み処理 レジスタ メモリ、バス タイマ/カウンタ |
||||
| その他周辺装置 | ペリフェラルバスと周辺装置 | 外部記憶装置 電源装置 |
||||
| 3 | データの入出力 | アナログ信号の入出力 | DAC(デジタルアナログコントローラ) | AD変換/DA変換 | ||
| パルス信号の入出力 | PWMとキャプチャ、コンペアタイマ | |||||
| ポートを使った入出力 | ポートとチャタリング | 入出力ポート センサ |
||||
| シリアル通信 | シフトレジスタとシリアル・パラレル変換 | パラレルポート シリアルポート |
||||
| デジタル信号の入出力 | 正負論理と回路図、CMOSとTTLのインターフェース、プルアップ・プルダウン抵抗、シュミットトリガーとチャタリング | 直流回路 交流回路 オームの法則 回路部品 回路計算の基礎 |
||||
| 4 | OS | OSとは | リソース管理 | 「OSなし」との対比として | 「通信デバイスの開発」のシーケンス図、OSファンクション設定一覧 | |
| リアルタイムOSの構造と機能 | カーネルとは、スケジューラーとは | リアルタイムOS | ||||
| プライオリティーとは、ステータスとは | ||||||
| 5 | 開発環境 | 開発環境の選び方 コンパイラ環境 |
ワンチップマイコンの種類、ライブラリ | 開発言語 C言語 ビット演算 キャスト Volatile 開発の流れ (ROM化まで) ICE ROMモニタ 計測器 |
||
| ICE (インサーキットエミュレーター) | デバッガ、シミュレータによる実行状況の可視化 | |||||
| CPUの選定方法 | 処理能力、ペリフェラル、メモリ容量 | |||||
| ROMライター | インテルS3等データのフォーマットと ライターの仕組み | |||||
| シミュレータ | 制御対象のモデル化 | |||||
| デバック・テスト治具 | テストパターンの実行結果を制御対象からデータを収集 | |||||
| 6 | プログラム概論 | プログラムのアーキテクチャーとは | アーキテクチャモデル | メッセージキュー、ディスパッチャ等 | プログラムはどのように動くのか スタートアップルーチン |
通信シーケンス図、 コード一覧表 |
| メッセージの考え方 | ||||||
| 動作の抽象化 | ||||||
| 状態と処理の分離 | ||||||
| 7 | 通信制御 | 通信フロー | セマフォフラグ、ACK、NACK、通信エラーステータス | ポーリング処理 割り込み処理 |
||
| バッファの排他制御 | ||||||
| 8 | ステートマシンの設計と実装 | モード遷移、状態遷移の考え方 | メッセージ、ステータス、エラーコード設計、センドメッセージ、タスクディスパッチャのアルゴリズム | |||
| メッセージと処理結果ステータスの取り扱い | ||||||
| 9 | 制御概論 | 制御ソフトとは | ユビキタス時代におけるソフトの応用範囲 | ネットワークと組み込みソフト | ファンコントロールプログラムをバージョンアップ、フィードバック制御を組み込む | |
| ソフトとハードの役割範囲 | ソフトの適応限界とそれを補間する | ロック検知、システムのシャットダウン、ポンピングとウォッチドックタイマ | ||||
| ハードの役割を知る | ||||||
| 制御対象を知る | 実習を行う制御対象の振る舞いを知る | 二次遅れ系、無駄時間、オフセット | ||||
| 10 | フェールセーフとインターロック | 制御システムの基本的な考え方 | エラー検出方法とハード資源の排他 制御 | |||
| 制御目標値、実動作量、操作量 | フィードバック制御 フォワード制御 PID制御 プロセス制御 サーボ制御 ファジー制御 |
|||||
| 制御ロジック | PID制御基本項目 | 比例項、微分項、積分項、フィードフォワード項とフィードバック項 | ||||
| 11 | 検証方法 | システムの性能評価と安定性についての指標を考える | オーバーシュート、アンダーシュート、制定時間、評価関数、ハンチング等、評価指数の意味 | 制御成績報告書 | ||
| 制御性能 | ||||||
| 12 | 基本設計 | システム的発想 | 開発キックオフ | 前提条件と問題解決の手順 | フローチャート | |
| 「横断歩道を渡る」を考える | ||||||
| 13 | 仕事とグループワーク | コンセンサストレーニング | 自己理解と他者理解 | トレーニング振り返りシート | ||
| 情報社会と行動科学 | 自己と社会の関係の理解 | |||||
| 14 | 製品企画 | システム全体の意義を知る | 基本計画からグループ独自の企画提案を行う | 基本計画書 | ||
| 製品開発のねらい | 前提条件・制約条件の提示 | |||||
| 開発承認会議 プレゼン資料作成 |
企画の目的と背景、物理的な背景 | システムの社会性と位置づけを考える | ||||
| ハードウエアの構成 | 売りの機能とフェール状態の想定 | |||||
| 15 | 開発承認会議 プレゼン |
企画書の発表 | 自グループの発表とともに他グループの考え方を見る | 企画プレゼンのパワーポイント、 自己評価、他者評価シート | ||
| 企画のリファイン | 質疑応答 | プレゼン結果の反映 ⇒ 企画の改良 | ||||
| グループの特色強化 企画の洗練 |
||||||
| 16 | 外部設計 | 状態遷移マトリクス作成 | 要求仕様からシステムの状態を想定し、動作の振る舞いを決定する | 正常モード、異常モード、特別処理モード、フェール状態の決定 | ステータスマトリクス (概要) |
|
| モード遷移設計 | ||||||
| 17 | アーキテクチャ設計 | システム全体のアーキテクチャを設計する | タイミングチャート、実行時間 | 全体構造図、 タイミングチャート |
||
| ソフト・ハードの全体構成を決める | バッファの確保、セマフォ | |||||
| 18 | タスクスケジュール設計 | 全体のタスクを洗い出し、想定処理時間を割り出す | 処理優先順位を考慮し、スケジューリングと割り込みの優先順位を決定する | |||
| 19 | 内部設計 | ステータスコード設計 | モード遷移、タスク実行結果等を考慮して、ステータスコードを設計する | レジスタ長や状態の数、デバック時の見やすさを考えてコード設計を行う | ステータスマトリクス | |
| 20 | モジュール設計 | 機能、インターフェースを決定する | カプセル化 | |||
| 21 | テストケース・ テストデータ作成 |
モード遷移、内部構造を考慮して、テストデータを作成する | テストケース重要度、チェックリスト | テスト計画書 | ||
| 22 | 実装演習 (正常系) |
プログラミング | スケジューラ、割り込みドライバ(優先順位の決定)デバイスドライバ作成 | ハードウエアの仕様を読み解きドライバーを作成する | デバイスドライバ | ドライバープログラム 性能、テスト結果報告書 |
| 23 | プログラミング | 入出力処理メインタスク作成 | A/D値、インプットキャプチャのタイマー値、アウトプットコンペアのタイマー値を単位を持った値へ変換する | |||
| フィルタリングの方法 | 信号値のノイズのフィルタリング | |||||
| 24 | プログラミング | 入出力処理全体動作のチューニング | タスク実行時間、処理余裕時間、パルス信号入出力波形の誤差をレポート | |||
| 処理時間、誤差測定 | ||||||
| リリース1レビュー | ドライバー性能、テスト結果レビュー | |||||
| 25 | プログラミング | 制御ロジック組み込み | PID制御式の組み込み | 制御プログラム 性能、テスト結果報告書 |
||
| 制御対象の状況を検出し、それに応 じたモードへの切り替え | ||||||
| 26 | プログラミング | 制御成績の確認 | 応答時間、周波数応答(ボード線図)制御目標性能を評価。結果をレポート | |||
| リリース2レビュー | 制御性能、テスト結果レビュー | |||||
| 27 | 実装演習 (異常系・ チューニング・ テスト) |
プログラミング | 異常系のプログラミング(制御モード) | 負荷変動、環境変動 | 最終リリース予定プログラム レビュー結果報告書 |
|
| 28 | プログラミング | 同(ハード異常、想定外操作など) | オープン、ショート故障、状況想定の吟味 | |||
| 29 | プログラミング | モード遷移、状態遷移マトリクスの仕様に基づいてチェック | 問題点の抽出、対策 | |||
| 完成度の把握 | ||||||
| リリース3レビュー | 異常系ステータス遷移、妥当性テスト結果レビュー | |||||
| 30 | テスト実施 | 全てのテストケースの実施 | テストの自動化、テストベンチ | |||
| 31 | テスト結果成績書の作成 | テスト結果のまとめ | テストデータのグルーピング | 最終テスト結果報告書 | ||
| 結果の解析 | ||||||
| 32 | プレゼンテーション技法 | 開発終了報告 プレゼン資料作成 |
ねらいの性能と出来映えの性能との差異を意識して、報告書をまとめる | プレゼン内容の検討(自己評価とアピールポイント) | 最終プレゼンのパワーポイント、自己評価、他者評価シート | |
| 33 | 開発終了報告 プレゼン |
プロジェクトのアウトプットと今後の課題について、プレゼンする | 最終本番に備えて綿密なリハーサルを繰り返す |
| *1…「組込み研修カリキュラムについて」との対応 |