Ini adalah pertanyaan yang sangat luas, tetapi saya akan mencoba memberikan beberapa petunjuk umum, semoga bermanfaat bagi orang lain, juga bagi Anda (jadi, terimalah permintaan maaf saya jika saya memposting hal-hal yang sudah Anda ketahui).
Jika Anda bertanya tentang membaca sensor, ini adalah telemetri dan belum tentu IOT. Saya telah mengkodekan banyak proyek di mana PC mandiri membaca dan menampilkan beberapa pengukuran.
Jika Anda juga ingin mengontrol perangkat keras yang terpasang, ini adalah SCADA . Sekali lagi, itu tidak perlu terhubung ke internet.
Berikut adalah diagram SCADA, yang memberikan kesan yang sangat baik untuk IOT secara umum. Perhatikan bahwa PLC pada diagram adalah sensor dan kontrol perangkat yang diaktifkan IoT.
Anda dapat meminta pujian perangkat keras untuk sensor & pengontrol di Rekomendasi Perangkat Keras .
Dan, setelah Anda memiliki beberapa kode, Anda bisa mendapatkan saran untuk masalah di Stack Overflow .
Secara umum, IoT untuk industri melibatkan model klien / server, dengan klien mengukur / mengendalikan perangkat perangkat keras dan melaporkan ke / menerima perintah dari server. Server juga umumnya memiliki database, dan memungkinkan pembuatan laporan untuk manajemen dan alarm (dan dapat menginstruksikan perangkat keras jarak jauh untuk mengkonfigurasi ulang / mematikan berdasarkan data yang diterima).
Fiuh! Itu intro dari jalan. Sekarang untuk membuat tangan kita kotor.
Jika Anda ingin memahami seluk beluk pengkodean, lihat soket , dan pahami perbedaan antara TCP dan UDP .
Untungnya, beberapa dekade telah membungkus sebagian besar barang rumit di perpustakaan, dan Anda mungkin disarankan untuk membaca tentang layanan RESTful. Ada banyak tutorial, kursus, dan video online gratis, tergantung pada bahasa Anda; C adalah bahasa embedded tradisional, dengan beberapa menggunakan C ++, tetapi tentu saja, gunakan apa pun yang Anda ketahui / rasakan nyaman. Python sangat populer dan mudah dipelajari, serta menjadi bahasa yang direkomendasikan untuk Raspberry Pi.
Secara pribadi, saya lebih suka mengkompilasi bahasa untuk ditafsirkan, karena lebih mudah untuk mengeluarkan bug, tetapi pilihan sepenuhnya terserah Anda. Pastikan bahwa ia memiliki dukungan yang baik untuk mengakses periferal melalui USB, Ethernet dan - masih sangat umum di port serial industri.
Untuk sisi server, 90% + server dunia masih berjalan di PHP. Namun, ada penggunaan NodeJS, terutama dari orang-orang yang membuat kode aplikasi browser, yang saat ini hanya dapat dilakukan dalam JavaScript dan tidak ingin belajar dua bahasa. Saya tidak merekomendasikan pengembangan aplikasi IoT berbasis browser, karena pembatasan kode browser mengakses sistem file dan periferal (walaupun, saya akan menyebutkan orang-orang seperti Cordova , jika Anda ingin mengembangkan untuk smartphone).
Untuk memulai, saya akan merekomendasikan Raspberry Pi (pengkodean dengan Python atau C).
Dan saya * sangat * merekomendasikan topi sensor. Ini hanya sebuah contoh, tetapi tidak mahal dan mengandung
- Giroskop - sensor kecepatan sudut: +/- 245/500 / 2000dps Accelerometer
- Sensor akselerasi linier: +/- 2/4/8/16 g
- Magnetometer - Sensor Magnetik: +/- 4/8/12/16
- Gauss Barometer: 260 - 1260 hPa rentang absolut (akurasi tergantung pada suhu dan tekanan, +/- 0,1 hPa dalam kondisi normal)
- Sensor suhu (Suhu akurat hingga +/- 2 degC dalam rentang 0-65 degC)
- Sensor Kelembaban Relatif (akurat hingga +/- 4,5% dalam kisaran 20-80% rH, akurat hingga +/- 0,5 degC dalam rentang 15-40 degC)
- Layar matriks LED 8x8 RGB
- Joystick 5 tombol kecil
Itu akan memungkinkan Anda mengumpulkan beberapa data dan melaporkannya ke server Anda. Anda mungkin dapat menemukan layanan online gratis untuk menerima dan menampilkan data Anda. Saya telah melihat beberapa di situs SO lainnya, tetapi lupa di mana.
Tapi, Anda mungkin ingin membuat kode server Anda sendiri. Saya akan merekomendasikan PHP sebagai bahasa pemrograman. Untuk Linux, Anda dilengkapi dengan LAMP (Linux, Apache, Mysql & PHP). Untuk Windows, Anda harus menginstal WAMP (Windows ... dll).
Anda dapat memilih. Saya telah menggunakan XAMPP dalam aplikasi industri selama lebih dari satu dekade. Anda tidak harus menggunakan Mysql, Sqlite dapat berfungsi dengan baik (plug shaless untuk pertanyaan SO saya sendiri 6 tahun yang lalu, " Sqlite atau MySql? Bagaimana cara memutuskan? "). Anda juga harus belajar tentang CRUD .
Berdasarkan data yang diterima dari klien / sensor, Anda mungkin ingin mengirim perintah kembali, bahkan hanya sederhana (tampilan: "suhu terlalu tinggi", yang mungkin diterjemahkan dengan menutup katup dalam sistem industri).
Anda mungkin ingin menaikkan alarm secara real time (kirim email yang mengatakan bahwa suhunya terlalu tinggi).
Dan, Anda mungkin juga ingin berpikir tentang membuat laporan. Mulailah dengan tabel yang menunjukkan data yang diterima. Pertimbangkan grafik, atau sesuatu yang lebih menarik. Tambahkan opsi untuk mengekspor ke Comma Separated Values (CSV) yang memungkinkan pengguna akhir untuk mengimpor data ke dalam spreadsheet untuk analisis dan manipulasi lebih lanjut.
Jika Anda tidak memutuskan bahwa Anda ingin pelaporan mewah, Anda dapat melakukannya di PHP, tapi, setelah beberapa dekade bahwa saya sekarang telah pindah ke melakukan banyak sisi klien laporan barang, dalam browser.
Untuk prinsip umum, dapatkan gambaran umum Aplikasi Satu Halaman dan AJAX . Saya, secara pribadi, melakukan banyak penelitian dan memilih Google AngularJS sebagai bahasa pemrograman saya (ada banyak tutorial & dukungan hebat), tetapi Anda bebas menggunakan JS, Jquery, dll, sesuka Anda.
Jika Anda memutuskan untuk membuat kode hal-hal browser juga, dan Anda mungkin juga menggunakan NodeJs di sisi server, sehingga Anda hanya perlu belajar satu bahasa pemrograman baru.
Terlalu banyak pilihan? Maaf :-(
Saya harap ini telah memberi Anda beberapa saran, tetapi jangan ragu untuk bertanya, dan beri tahu saya jika ada saran umum yang hilang di sini.