2011年6月26日日曜日

IT基礎技術勉強会に出てみました。(5/25)

もう1ヶ月も前の話です。坂井弘亮さんの主催する基礎技術勉強会(http://kozos.jp/group/ITbeginner.html) に出席してみました。
場所は川崎市 総合自治会館でした。隔週で開催されているようです。
私としては異動前の職場が川崎市だったので、異動前だったらあっさりいけたのですが、今の職場はつくば市なのでフレックス退社使って3時に会社を出て行ってみました。

最初の難関は総合自治会館を探すことでした。google mapが使えるNexus oneを忘れたのが大失敗。どこを歩いているのか解らない…
こんな感じでいけばよかったのかと思います。
東急東横線武蔵小杉駅南口から http://goo.gl/maps/vuMO

そんな感じで総合自治会館に到着したらもう始まってました。ちこく〜
話の主題は「組込みシステム設計演習 ~踏切遮断機の設計~」
踏切遮断機のシステムを組んでみようと言うことで、踏切周辺で列車を検出するセンサと遮断機の操作系は下位コントローラに任せ、今回作るシステムは下位コントローラからのセンサ信号を受信して、遮断機を操作する指令を出します。
遮断機自体の制御は別のコントローラーが担当していて、今回設計するシステムは以下のセンサの状態を監視して遮断機の操作命令を出力することになります。
センサは7つ
  • 左から右への列車が踏切へ進入
  • 左から右への列車が踏切を通過
  • 右から左への列車が踏切へ進入
  • 右から左への列車が踏切を通過
  • 遮断機が開いた
  • 遮断機が閉じた
  • 遮断機が閉じた状態でさらに下がろうとしたときのリミット
遮断機の上げ下げは3種類の命令があります
  • 遮断機を上げる
  • 遮断機を下げる
  • 遮断機を停止させる
感想としては課題自体がとても解りやすく、目的がはっきりしているので、坂井さんの設計したロジックと自分の予想したロジックに違いがほとんどありませんでした。
踏切の仕様の認識が参加者一人一人で違っていたので、時々話が噛み合なくなったりしたのがちょっと残念なところでした。最初に仕様をしっかり定義するべきだったのかもしれません。
最後に踏切の処理の中に一つでも重い処理を入れると他の処理が進まなくなってしまうことと、その解決策としてOS導入によるタスクスケジューリングで処理を切り替えつつ進める方法が提示されました。
私の仕事は試作機の組み込みプログラム開発ですが、やはり試作の初期の頃は処理内容も決まっていて、組み込みOSの必要性を感じなかったのですが、機能追加で条件毎に処理を切り替えるとかの処理があるとタスクスケジューリングは魅力的です。