2021年12月17日金曜日

Matlabの制御工学

 制御工学もシミュレーションで確認すつのが普通でかなりの部分がコンピューター上で確認するのですが、当然ソフトの操作の理解や運動方程式や物理計算式の理解が出てきますがもう理解するのは限界を感じています。

現場で実践している人は自分でスクリプトを組んでどんどん最先端の技術を導入しています。

特に自動運転や自律ロボットはAIを組み入れて凄いことになっています。

ハードの計算能力や次々と新しいセンサーが出てきています。

ある程度基本的な部分はなんとか理解出来ますが、プログラムに関しては組み合わせがほぼ無限に存在する感じです。開発なのでそれぞれのエンジニアで独自の開発をしています。

コードを見ても理解不能です。

とりあえずMatlabを始めましたが、かなり高度はソフトです。通常の配列の扱いより行列の取り扱いに慣れる必要がありまた制御の為のコンポーネントの設定はサンプルを真似るくらいしか出来ない位に数学や物理の理解が必要です。

先ずは会社の太陽光発電量を可視化してそのデータから当日の晴れかそうでないかと予測して充放電をするソフトの解説を応用してみました。

CSVデータとMatlabに取り込んで欠損データを補完してスペクトルアナライザーに掛けてみました。Simuilinkという解析ソフトを使いました。

https://youtu.be/GTpP3Agz3L8

tabledataをx = double(Untitiled)と入力するも文法間違えでx = table2array(Untitled)にする様にと警告がでます。この際行列は行として入力されるので x = x(:)で列に変換
次にsolor = fillmissing(solor, 'previous')と入力して欠損データを補います。
Simulinkの乳力をt,solorに変えてGainを10に変更その結果はこの通り



これで会社の発電電力で晴れかそうでないかの判定が出来ました。

社内で電力量で判定出来るのでは?との事ですが、どの程度の間隔でどの閾値で判定するかを決めないといけません。過去のデータを一つ一つ調べる事は実質無理です。また天気予報を使うにしても確率をどう取るかです。一つ一つ閾値を決めるのはかなりの手間です。やってみれば分かります。

今回のDSPのスペクトルアナライザーなら25%閾値でローパスとハイパスのフィルターで12サンプル(3時間)でサンプルデータも会社のデータも見事に分ける事が出来たのでどこでも使えるモデルになっています。

今後蓄電池は増えて太陽光用の蓄電池システムも出来るでしょう。
このシステムなら基本の蓄電池のバッテリーマネジメント(過充電や過放電の機能があれば)太陽光にこのシステムのスイッチをつければシステムとしてはほぼ問題ないのではないでしょうか?



0 件のコメント:

コメントを投稿