2017-08-27 8 views
-1

私は組込みシステムで作業しています。説明のために、私はdsPIC33EPとシンプルなシリアルEEPROMを使って作業しています。EEPROMに方程式を保存する方法は?

リニア制御方式(y = mx + b)を使用するコントローラを構築しているとします。コントローラに必要な設定が異なる場合は、簡単にmとbをEEPROMに保存して、別の設定で検索します。

ここで、さまざまな設定に対して異なる方程式を使用したいとします。私はすべての方程式を事前にプログラムしておき、その方程式を選択してEEPROMから設定を引き出す方法があります。あなたは前もって方程式を知る必要があるが、それでもやることができるので難しい。

ここで、前もって方程式を知らないとします。たぶんあなたは、例えば賢明な近似をしなければならないでしょう。どのようにしてそのようなものを記憶に残すことができますか?すべてのコントローラーが行うべきことは、それをセンサーの読み込みに送り、制御変数を返すことです。関数に変数を渡して答えを返すようなもの。

現在の状態だけが重要な場合は、どのようにそのような関数をメモリに保存できますか?

過去の状態が重要な場合(たとえば、制御式が2番目、3番目または4番目の順序である場合)、そのような関数をどのように格納できますか?

+0

方程式は、y = a + bx、y = a + bx +cx²、y = a + bx +cx²+dx³**ですか、それとももっと複雑ですか?それが簡単なのであれば、xのべき乗の範囲は? – cup

+0

@cupはい、方程式はその形式であり、立方体は最高次数です。ただし、区分的に定義することも、時には混合して一致させることもできます。例えば、第1の範囲はy = a + bxであり、第2の範囲はy = a + bx + cx^2である。他の外側のケースは、補間された値です。たとえば、低範囲はy = 2 + 5x + 7x^2で、高範囲はy = 1 + 7x + 19x^2です。次に、その係数の線形補間の間で。たとえば、真ん中にy = 1.5 + 6x + 13x^2のように表示されます。 –

+0

各設定に対して、ある範囲の係数があり、いくつかの設定の過去の状態と他の設定の現在の状態に基づいて、特定の係数セットに絞り込む必要があります。スイッチがオフになると、データがNVRAMに保存されていない限り、参照する以前の状態はありません。 – cup

答えて

0

dsPICのRAMは限られていますが、小さくても効果的なテキストパーサーには十分なFLASHです。テキストベースのスクリプトを使用することを考えましたか?これらは、実行時により効率的なデータ形式に変換できます。

関連する問題