Kemahiran pengaturcaraan PHP: Laksanakan kaedah penapisan dan analisis data Modbus TCP
Modbus TCP ialah protokol komunikasi yang biasa digunakan, yang boleh digunakan untuk berkomunikasi dengan pelbagai peranti dan sangat popular dalam bidang kawalan industri. Dalam pengaturcaraan PHP, cara menapis dan menganalisis data Modbus TCP adalah kemahiran dan keperluan yang penting. Artikel ini akan memperkenalkan beberapa kemahiran pengaturcaraan PHP untuk membantu anda melaksanakan kaedah penapisan dan analisis data Modbus TCP.
1. Wujudkan sambungan Modbus TCP
Dalam PHP, kita boleh menggunakan perpustakaan "phpmodbus" untuk mewujudkan sambungan dengan peranti Modbus TCP. Pertama, kita perlu memasang perpustakaan. Jalankan arahan berikut untuk memasang:
composer require modbus/tcp-php
Setelah pemasangan selesai, kita boleh menggunakan perpustakaan. Berikut ialah contoh kod untuk mewujudkan sambungan Modbus TCP:
<?php require __DIR__.'/vendor/autoload.php'; use ModbusTcpClientNetworkBinaryStreamConnection; $ip = '192.168.1.100'; $port = 502; $connection = new BinaryStreamConnection($ip, $port); $connection->connect(); // 在这里可以进行Modbus TCP通信 $connection->close();
2. Hantar permintaan Modbus TCP
Selepas mewujudkan sambungan dengan peranti, kami boleh menggunakan perpustakaan "phpmodbus" untuk menghantar permintaan Modbus TCP. Berikut ialah contoh kod yang menghantar permintaan Modbus TCP untuk membaca daftar pegangan:
... use ModbusTcpClientRequestReadHoldingRegistersRequest; use ModbusTcpClientUtilsTypes; $request = new ReadHoldingRegistersRequest(0, 10); $response = $connection->sendRequest($request); if ($response->isOk()) { $data = Types::parseByteArray($response->getData()); print_r($data); } else { echo '请求失败:' . $response->getErrorMessage(); } ...
Kod di atas menghantar permintaan untuk membaca 10 daftar pegangan bermula pada alamat 0 dan menghuraikan data yang terhasil ke dalam tatasusunan untuk dicetak.
3. Penapisan dan analisis data
Dalam projek sebenar, semua data biasanya tidak diproses secara langsung, tetapi ditapis dan dianalisis mengikut keperluan. Contohnya, jika kita hanya ingin mendapatkan data dengan nilai lebih daripada 100 dalam daftar pegangan, kita boleh menggunakan kod berikut untuk menapis dan menganalisis:
... if ($response->isOk()) { $data = Types::parseByteArray($response->getData()); $filteredData = array_filter($data, function($value) { return $value > 100; }); print_r($filteredData); } else { echo '请求失败:' . $response->getErrorMessage(); } ...
Kod di atas menggunakan fungsi array_filter
untuk menapis data, mengekalkan data sahaja dengan nilai lebih daripada 100, dan cetaknya .
4. Ringkasan
Melalui kemahiran pengaturcaraan PHP di atas, kami boleh melaksanakan penyaringan dan analisis data Modbus TCP dengan mudah. Pertama, kami mewujudkan sambungan ke peranti Modbus TCP kemudian, kami menghantar permintaan Modbus TCP dan memproses data di dalamnya. Akhir sekali, kami juga menunjukkan cara menapis dan menganalisis data.
Saya harap artikel ini dapat membantu anda menggunakan kaedah penyaringan dan analisis data Modbus TCP secara fleksibel dalam pengaturcaraan PHP. Selamat berprogram!
Atas ialah kandungan terperinci Kemahiran pengaturcaraan PHP: Melaksanakan kaedah penapisan dan analisis data Modbus TCP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!