Biarkan saya mula dengan nombor: 214-219. Itu adalah julat halaman dalam manual V6.2.2 di mana blok titik terapung berada. Anda mungkin berfikir vendor menyembunyikannya di sana kerana tiada siapa yang menggunakannya. Salah. Mereka menyembunyikannya di sana kerana matematik integer adalah baik untuk sembilan puluh peratus pekerjaan — dan sepuluh peratus terakhir adalah di mana mesin sebenar berada.
Sebuah Micro-PLC melakukan SIN, COS, TAN, LN, EXP, SQRT, perbandingan nombor sebenar dan pergerakan nombor sebenar. Sepuluh tahun yang lalu, ayat itu akan menjadi jenaka. Hari ini ia dihantar dalam modul rel DIN 35mm yang kosnya kurang daripada probe osiloskop yang baik.
Apabila Matematik Integer Berbohong kepada Anda
Inilah perangkapnya. Menskala input analog 0-10V dengan matematik integer berfungsi — sehingga anda membahagikannya. 6V ke dalam julat 0-1000: pembahagian integer menghilangkan baki, dan tiba-tiba bacaan tahap anda melayang oleh satu unit setiap imbasan. Selama satu shift, drift itu bertambah. Selama seminggu, tangki anda melimpah kerana PLC menganggap tahapnya baik.
Titik terapung memperbaikinya. Satu blok penskalaan, nombor sebenar dari hujung ke hujung, dan bunyi pembulatan hilang. Itu bukan kemewahan. Itu adalah apa yang menjaga pam anda kering dan pelanggan anda tenang.
Kes Konkret: Kawalan Suhu PID dengan Matematik Sebenar
Tetapkan gelung PID pada PR-18: input analog membaca PT100 melalui pemancar 0-10V, blok PID mengira dengan keuntungan nombor sebenar, output menggerakkan saluran PWM untuk pemanas. Enjin titik terapung menjaga terma integral stabil. Pada perkakasan hanya integer, gelung yang sama memerlukan penjadualan keuntungan manual dan masih berosilasi pada ralat rendah.
Saya melihat seorang jurutera pengkomisionan mengejar osilasi 0.4 darjah selama dua hari pada PID integer. Tukar CPU untuk model titik terapung, laraskan dalam satu jam. Perbezaan kos perkakasan adalah lucu. Perbezaan masa kejuruteraan tidak.
Blok yang Akan Anda Gunakan
Jadilah jujur: anda akan menggunakan ADD-R, SUB-R, MUL-R, DIV-R, dan SQRT. Mungkin ROUND dan TRUNC apabila menyerahkan nilai kepada HMI. Fungsi trig ada untuk projek yang benar-benar pelik — pengiraan aliran, isipadu tangki dari tahap, pampasan sudut konveyor. Apabila permintaan aneh itu tiba, anda tidak mahu menjelaskan bahawa PLC anda tidak dapat melakukan kosinus.
Dan penukaran rentetan lebih penting daripada yang anda sangka. Nombor-ke-rentetan, integer-ke-ASCII — itulah cara anda membina mesej amaran dan log data yang boleh dibaca tanpa bahasa skrip HMI.
Apa Kosnya
Tiada yang ekstra, setelah anda memilih CPU yang betul. Blok titik terapung adalah sebahagian daripada perpustakaan standard dalam semakan manual semasa, dan perisian adalah percuma. Satu-satunya kos sebenar adalah perubahan tabiat: berhenti berfikir dalam integer, mula berfikir dalam unit kejuruteraan.
Penskalaan Dilakukan dengan Betul
Penskalaan adalah di mana titik terapung memperoleh tempatnya, dan ia juga di mana kebanyakan pepijat penskalaan berada. Kesalahan klasik: menskalakan nilai mentah dengan matematik integer dan kehilangan baki pada setiap pembahagian. Pembetulan klasik: lakukan matematik dalam nombor sebenar dan tukar sekali, di sempadan, di mana HMI atau SCADA mengharapkan integer. Satu blok penskalaan, nombor sebenar dari hujung ke hujung, dan bunyi pembulatan hilang.
Tulis pemalar penskalaan di tempat di mana jurutera seterusnya dapat menemuinya. Pemancar 4-20mA membaca 0-10 bar: formula, julat mentah, julat kejuruteraan — semua itu perlu berada dalam komen pada blok penskalaan. Nilai "nampak betul" selama berbulan-bulan sehingga ia tidak, dan orang yang menyahpepijatnya akan memerlukan pemalar, bukan ingatan orang yang memilihnya.
Uji sempadan semasa pengkomisionan: minimum, maksimum, dan titik tengah. Blok penskalaan yang betul pada 50% tetapi salah pada 0% akan lulus pandangan kasual dan gagal dalam proses sebenar. Tiga titik ujian, lima minit, dan penskalaan selesai.
Kekeliruan Hanya Integer
Ada satu aliran pemikiran yang mengatakan aMicro PLCseharusnya kekal hanya integer kerana itulah yang dilakukan oleh pengawal kecil. Ia adalah posisi yang boleh dipertahankan dari segi kos dan tidak dapat dipertahankan dari segi kejuruteraan pada saat proses anda melibatkan pembahagian, nisbah, atau apa-apa yang menyerupai unit sebenar. Perkakasan titik terapung tidak menambah kos tambahan pada platform ini; kemampuan ada dalam perpustakaan blok, bukan tier premium.
Kos sebenar pemikiran hanya integer muncul dalam penyelenggaraan: penyelesaian sementara — integer berskala, perpindahan perpuluhan, matematik titik tetap yang dibuat sendiri — adalah tepat kod yang tidak difahami oleh sesiapa enam bulan kemudian. Titik terapung dibaca seperti proses: suhu dalam darjah, tahap dalam meter, aliran dalam liter per minit. Kod yang boleh dibaca adalah kod yang boleh diselenggara, dan kod yang boleh diselenggara adalah apa yang menjaga kontrak perkhidmatan menguntungkan.
Gunakan integer di mana ia adalah alat yang betul — pengira, bendera, nilai indeks. Gunakan float di mana proses berada. Platform memberi anda kedua-duanya; disiplin adalah memilih mengikut isyarat, bukan mengikut agama.
Nombor Sebenar dalam HMI
Skrin HMI dan SCADA harus menunjukkan unit kejuruteraan, bukan integer mentah — dan penskalaan berada di sisi PLC. Lakukan penukaran sekali, dalam satu blok penskalaan, dan paparan membaca darjah, bar, dan liter per minit di mana-mana. Alternatif — penskalaan di setiap skrin, setiap tag, setiap laporan — adalah kesalahan formula yang menunggu untuk berlaku. Satu titik penukaran setiap isyarat, didokumenkan dalam komen blok, dan seluruh sistem bercakap bahasa pengendali.
Itulah perubahannya. Perkakasan sudah membuatnya. Gaya pengaturcaraan anda adalah bahagian terakhir peningkatan.












