2009年6月17日水曜日

Scilab勉強中

昨年のチャンピオンシップ大会後のワークショップでMATLAB/Simulinkを何チームか使っているという話を聞きました。「たぶん仕事で使っているんだろう・・・うちのチームには縁がないものだなぁ・・・」と聞き流していたんですが、ETロボコンのメーリングリストや技術教育でもMATLAB/Simulinkや制御パラメータに関する質問が頻繁に出てきて、少し勉強して活用できればと思うようになってきてます。

ただしMATLAB/Simulinkを購入できるほど(略)なので、フリーソフトでMATLABと同じことができるScilabを使って制御パラメータ計算やログの解析できるように勉強してます。

制御パラメータ計算は理解するのにもう少しかかりそうです。ログはまずグラフにして見るところからはじめてます。

以下グラフ化の例(ログファイルの1行目は削除しないとエラーが出ます)

// csvファイル読み込み
a = read('test.csv', -1, 12);
// 電圧表示
plot(a(:,1) , a(:,4));
xlabel('Time (ms)');
ylabel('Voltage (mV)');
// save
filename = 'test01'
xs2png(0, filename);



// ファイル読み込み
logdata = read('test.csv', -1, 12);
clf(); // clear

// Light Sensor
subplot(211);
plot(logdata(:,1) , logdata(:,10));
xlabel('Time (ms)');
ylabel('Light Sensor (a.u.)');

subplot(212);
histplot([min(logdata(:,10)):1:max(logdata(:,10))], logdata(:,10));
xlabel('Light Sensor');
ylabel('Histgram');

// save
filename = 'test02'
xs2png(0, filename);

0 件のコメント:

コメントを投稿