0

私はphp Webアプリを持っています。

アナログセンサーからデータを収集してWebアプリに値を表示したい(温度など)

SPI または IIC アナログ - デジタル コンバーターを使用してデータを収集できますが、ADC からデータを取得して php に渡す最も合理的な方法 (ソフトウェア) は何ですか?

4

3 に答える 3

1

HTTP は同時アクセスがすべてですが、AD コンバーターは特定のデバイスに制約されます。つまり、アクセスを制御するために、ある種のミューテックスまたはキューイング メカニズム (HTTP ベースのアプリではキューイングは悪い考えですが) が必要になりますが、より良い解決策です。 cron ジョブまたはデーモンを実行してデバイスをポーリングし、その結果を Web アプリケーションが (同時に) 取得できるデータベースに公開します。

于 2012-11-06T11:58:49.967 に答える
0

1 つの方法は、ADC を読み取り、値をシステム出力に返す C/C++ アプリケーションを作成することです。その後、PHP は関数http://php.net/manual/en/function.exec.phpを使用してアプリケーションを実行し、出力を取得できます。

10 年間データ監視を行ってきたので、これは私が行う方法ではありませんが、これは PHP で実現する簡単な方法だと思います!

于 2012-11-06T13:35:08.887 に答える
0

アナログ センサーと ADC を選択しますか? それ以外の場合は、両方のジョブを実行できる統合ソリューションがあります。一例がこのフォーラムにあります。

そのビルディング ブロック (環境データを監視し、シリアル接続で出力するもの) を取得したら、最も合理的な方法は、数秒ごとにデバイスをポーリングし、データを読み取り、サーバーに記録するデーモンを作成することです。PHP バインディングを備えた RRDtool 。

PHP ページでは、単にrrd_lastupdate()現在のデータを取得するために使用するか、アーカイブされたデータも使用して、より洗練されたものを構築したい場合があります。

それ以外の場合、サーバーとセンサーが近くにない場合は、Arduino などのプラットフォームを使用して、センサー、おそらく ADC、イーサネット ポート、および HTTP を話す C/C++ コードを備えた独自のデバイスを構築することをお勧めします (そのためのライブラリがあります)。 )、現在の値を出力します。

于 2012-11-06T14:06:42.893 に答える