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の必要性を感じなかったのですが、機能追加で条件毎に処理を切り替えるとかの処理があるとタスクスケジューリングは魅力的です。

2011年1月17日月曜日

ScilabとXcos

Octaveに手を出したのにScilabにも手を出してしまいました。

OctaveとScilabの最大の違いはSimulinkに似たXcosの存在だと思います。グラフィカルに接続が判るとモデリングも楽。

まずはあっさりと1時遅れ系のステップ応答を見てみました。

image

こんな感じにブロックを配置して

image

実行するとこんなグラフが表示されます。…としたいところですが、シミュレーションの時間を指定しないと終わりません。

 

image

設定はメニューのシミュレーション→設定を選んで、(変な名前ですが)”積分終了時間”を短くします。上に書いたグラフでは10秒に設定しました。

2010年12月26日日曜日

Windows Live Writerがなかなか便利

Office製品で作った図表、数式を使えることがとても便利でした。

単にコピー&ペーストで貼り付けることができて投稿も可能。

Windows Live Writer テストその2

image

ブロック線図らしきもの。Power Point からコピー

Windows Live Writer テスト

ぷ、プリントスクリーンでアクティブなウィンドウだけコピーする方法を忘れた・・・

image

というわけで伝達関数のボード線図をOctaveで書いてみた。

ひょうじできてるかな?

octave symbolic toolbox 始めてみた

最初にsymbolic toolboxを初期化しないといけないらしい
>symbols

これで使えるようになった模様

とりあえず変数Aを定義してみる
> a=sym('A')

a =

A

aとAは同じ文字でも違ってても大丈夫。Aは文字列でもOK。

この後は普通に代数の式を入れていく

octave-3.2.4.exe:30> b=a+a^2+a^4
b =

A^(4.0)+A+A^(2.0)

ちょっと順番が変な気がする・・・けど代数で式が立てられました。

*matlabの場合
今回使用した関数はmatlabとSymbolic Math Toolboxでも使用可能です。
matlabの場合はsymbolsを実行しなくても使えるみたい。

2010年11月13日土曜日

Xperia mini pro ,Android 2.1でのroot化とBusyboxインストール

root化で前の投稿より楽な方法を見つけた。
Android marketでz4rootをインストール。この時気を付けるのは、実行する前にUSBデバッグをONにすること。英語で警告が出るので容易に判ると思う。

busyboxのインストールはTitanium Backupの機能を使う方が楽かもしれない。

Titanium Backupのインストール方法はここが詳しい。
THE BOOLEE STREET「Xperia X10 mini proを初期化 > ROOT >日本仕様に。」
http://booleestreet.xii.jp/archives/3466

コンソール入力は多いですがつまづきの少なそうな方法です。(いろいろ四苦八苦した人間の感想)