[iNut PLC]Hệ thống giám sát nước sinh hoạt bằng - Hướng dẫn giám sát PLC trên Internet

Mô tả dự án: 

Trước đây, khi nghĩ về Scada - hệ thống điều khiển giám sát và thu thập dữ liệu, mọi người sẽ nghĩ nó rất phức tạp và đắt tiền. Rất khó tiếp cận và phải đi học chuyên sâu. Tuy nhiên, với sự xuất hiện của bo mạch iNut PLC. Mọi thứ đã dễ dàng hơn rất nhiều. Thế giới công nghiệp năm trong lòng bàn tay của bạn.

SCADA là gì?

Theo Wikipedia, SCADA là:

SCADA (viết tắt tiếng Anh: Supervisory Control And Data Acquisition) hiểu theo nghĩa truyền thống là một hệ thống điều khiển giám sát và thu thập dữ liệu. Nhằm hỗ trợ con người trong quá trình giám sát và điều khiển từ xa.

Tuy nhiên, trong thực tế có một số hệ thống vẫn thường được gọi là SCADA, mặc dù những hệ thống này chỉ thực hiện duy nhất một chức năng là thu thập dữ liệu.

Cấu trúc một hệ SCADA có các thành phần cơ bản sau (hình 1):

  • Trạm điều khiển giám sát trung tâm: là một hay nhiều máy chủ trung tâm (central host computer server).
  • Trạm thu thập dữ liệu trung gian: Là các khối thiết bị vào ra đầu cuối từ xa RTU (Remote Terminal Units) hoặc là các khối điều khiển logic khả trình PLC (Programmable Logic Controllers) có chức năng giao tiếp với các thiết bị chấp hành (cảm biến cấp trường, các hộp điều khiển đóng cắt và các van chấp hành…).
  • Hệ thống truyền thông: bao gồm các mạng truyền thông công nghiệp, các thiết bị viễn thông và các thiết bị chuyển đổi dồn kênh có chức năng truyền dữ liệu cấp trường đến các khối điều khiển và máy chủ
  • Giao diện người - máy HMI (Human - Machine Interface): Là các thiết bị hiển thị quá trình xử lý dữ liệu để người vận hành điều khiển các quá trình hoạt động của hệ thống.

SCADA schematic overview-s.png

Hiện trạng các hệ thống SCADA hiện nay

Các hệ thống SCADA hiện nay đã tương đối phổ biến trong giới nhà máy công nghiệp. Tuy nhiên, giá thành còn mắc và các giải pháp rẻ nhất cũng đã giao động từ 30 - 50 triệu. Dẫu rằng, các hệ thống này ổn định và chạy trên các phần cứng chính hãng của các nhà máy lớn và phổ biến. Tuy nhiên, không phải khách hàng nào cũng có thể sử dụng được vì chi phí đầu tư ban đầu cao và độ khó khi thiết kế, sử dụng và vận hay. Một hệ thống SCADA cho chúng ta những lợi ích rất lớn.

  • Các giải pháp Scada đã trải qua rất nhiều kiểm định và thử nghiệm ở những môi trường chuyên nghiệp, lớn và độ nhiễu cao. 
  • Các tập đoàn lớn hàng đầu thế giới đã vào mảng này từ vài thập kỷ nên hầu hết các bài toán đều có lời giải và chi phí đi kèm.
  • Lực lưỡng kĩ sư dồi dào và thực sự có rất nhiều kinh nghiệm trong mảng này.
  • Các giải pháp đều mở rộng và đi kèm đều rất mắc.
  • Kỹ sư điện biết lập trình 4.0 ở Việt Nam tập trung khá nhiều ở các khu công nghiệp và sẵn sàng cung cấp các dịch vụ lắp đặt, bảo trì, bảo dưỡng hệ thống SCADA.
  • Thiết bị đầy đủ chuẩn kết nối. Hoạt động tốt ở các điều kiện môi trường khác nhau.
  • Và còn rất nhiều ưu điểm khác.

Xu hướng cách mạng 4.0 tại Việt Nam

Trên thế giới, ngày càng nhiều doanh nghiệp nổi tiếng đã cung cấp những giải pháp IoT từ dân dụng đến công nghiệp:

  • Như Amazon ra Amazon Web Services hỗ trợ các dịch vụ máy chủ và dịch vụ nền IoT.
  • Microsoft thì có Azure
  • Và rất nhiều các startup khác như: Blynk, Xively, Koor.IO, PubNub (khá nổi tiếng)
  • ...

Nhìn chung, IoT trong công nghiệp là xu hướng mà xã hội tương lai sẽ hướng đến. Và chúng ta - những người con của dân tộc Việt Nam - đang ở đâu trong hành trình này?

Có người cho rằng, trong điều kiện đang tiến hành công nghiệp hóa, Việt Nam nên tập trung thực hiện các nội dung của cuộc cách mạng 2.0, đến khi tạo ra đủ tiền đề vật chất mới đặt vấn đề thực hiện cách mạng công nghiệp 4.0.

Cách tiếp cận đó có vẻ thực tế, nhưng không khoa học, trong điều kiện nước ta đã hội nhập sâu rộng với thế giới, đã đạt được những thành tựu to lớn, biến đổi kinh tế - xã hội của cả dân tộc, đang khát khao vươn lên từng nấc thang của quá trình phát triển theo hướng văn minh, hiện đại. Việt Nam đang tiến hành cuộc cách mạng 2.0, xây dựng cơ sở hạ tầng kỹ thuật và xã hội và cuộc cách mạng 3.0 với sự phát triển của công nghệ thông tin, tự động hóa, mạng Internet rộng khắp cả nước, đồng thời chủ động thực hiện cách mạng công nghiệp 4.0, nhằm tận dụng cơ hội mới để xích gần và đuổi kịp trình độ phát triển của khu vực và thế giới.

Trích http://baodautu.vn/cach-mang-cong-nghiep-40-voi-viet-nam-d77369.html

Ở Việt Nam nói chung hay ở TPHCM nói riêng, với hơn 300 dự án về Internet of Things, chính là minh chứng cho những điều này (trích dẫn từ Cộng đồng IoT Việt Nam của anh David Trieu). Như vậy, Việt Nam chúng ta không hề yếu, không hề chậm chân trong lĩnh vực này. Tuy nhiên, sự phân mảnh và cạnh tranh trong lĩnh vực này là rất lớn. Vì vậy, nếu có thể, chúng ta hãy cùng nhau, làm phần tốt nhất của mình để tương trợ nhau đưa Việt Nam cán đích 4.0 để đuổi kịp thế giới.

Hạn chế của các hệ thống Scada hiện tại

  • Giá thành đầu tư ban đầu cao, không phù hợp cho khách hàng đại chúng. Rẻ nhất là 30 - 50 triệu cho một hệ thống xử lý nước thải. Thiết bị ngoại nhập cao và đôi khi không phù hợp với các hệ thống PLC hiện có dẫn đến phải thay đổi và lập trình lại.
  • Đối với những hệ thống phân bố xa và không tập trung như hệ thống xử lý nước thải, bể hồ,... Nói chung là hệ thống phân tán thì việc triển khai Scada sẽ cực kỳ mắc và chi chí đầu tư ban đầu cực cao. Trong khi nhiệm vụ ban đầu khi một chủ đầu tư mong muốn làm đó là giám sát và có thể là điều khiển từ xa ở mọi nơi trên thế giới.
  • Phải NAT Port, đầu tư chi phí server cao. 
  • Các mối nguy về bảo mật vì bị lộ IP Public dẫn đến bị DDOS.
  • Các hệ thống bảo mật HTTPS đôi khi không được chú trọng vì kỹ sư điện sẽ không tốt về những mảng công nghệ thông tin.
  • Chi phí cao để tích hợp SCADA vào ERP hoặc các chuẩn để tích hợp tốt với các phần mềm hiện tại.

Giải pháp cho doanh nghiệp cung cấp giải pháp điện công nghiệp

Không phải khách hàng nào cũng sẵn sàng bỏ ra một số tiền lớn để đầu tư một hệ thống Scada công nghiệp, vì:

  • Chi phí đầu tư cao.
  • Nguyên nhân chính: Thay đổi các hệ thống hiện có dẫn đến sự ngắt ngừng hệ thống.

Chính từ vấn đề ấy, cùng với sự hỗ trợ thử nghiệm của anh Kim Nhật từ CÔNG TY TNHH KỸ THUẬT ĐIỆN OMINA, nền tảng iNut Platform đã ra được sản phẩm mới gọi là iNut PLC. Với bo mạch iNut PLC, SCADA đã nằm trong lòng bàn tay của bạn.

Với tinh thần, hầu hết các PLC đều có cổng RS485 và hỗ trợ chuẩn truyền thông Modbus RTU. Nên iNut PLC, sẽ giúp PLC kết nối lên Internet bằng cách đồng bộ một số thanh ghi D (DATA MEMORY WORDS) lên Internet. Có thể xem mô tả qua lược đồ sau (click vào để xem rõ hơn):

Với mô tả trên, mỗi PLC sẽ được đồng bộ một số thanh ghi, mà ở phiên bản đầu tiên của iNut PLC sẽ là 8 thanh ghi D101, D102, D103, D104D105, D106, D107D108. Bằng việc vận dụng khéo léo cách sửa chữa các thanh ghi, mà bạn hoàn toàn có thể điều khiển 1 máy bơm hoặc nhiều máy bơm. Ở trên là dùng để điều khiển máy bơm.

Okay, bây giờ mình sẽ thử đặt ra một bài toán như sau:

Một trạm nước thải như hình sau:

  • Có 4 máy bơm:
    • G1, G2
    • M1, M2
  • Có 2 cảm biến digital:
    • Đầy bể
    • Cạn bể
  • Có 2 cảm biến analog 4-20ma
    • Áp suất 1
    • Áp suất 2

Lần lượt đưa 8 giá trị trên vào 8 thanh ghi

  • G1: D101
  • G2: D102
  • M1: D103
  • M2: D104
  • Đầy bể (ĐB): D105
  • Cạn bể (CB): D106
  • Áp suất 1: D107
  • Áp suất 2: D108

Okay, nào cùng thực chiến!

Chuẩn bị trước khi bắt đầu

Phần mềm

  • Trên điện thoại di động:
    • iNut - Công tắc wifi (các bạn search trong apple store hoặc google play từ khóa inut là ra). Tải về trên Apple Store, tải về ở Google Play.
    • App này là app dùng để cài đặt các thiết bị iNut (bao gồm iNut PLC và các loại thiết bị khác trong hệ sinh thái iNut Platform) lên Internet.
  • Trên máy tính:

Phần cứng

  • iNut PLC. Các bạn có thể chọn các loại sau: 
    • iNut - PLC Modbus RTU RS-485 8D
      • 8 thanh ghi từ PLC đồng bộ lên Internet / không giới hạn số lần gửi thay đổi giá trị thanh ghi từ Internet xuống PLC.
      • Các thanh ghi được đồng bộ: D101, D102, D103, D104, D105, D106, D107, D108.
      • Thông số RS-485 Modbus RTU Master của iNut PLC
        • ​Baudrate: 19200
        • Databits: 
        • Stopbits: 1
        • No parity
        • Modbus RTU protocol
        • Modbus Maser (nghĩa là thiết bị PLC của các bạn sẽ phải làm Modbus Slave với Slave Address 1)
  • PLC loại bất kỳ hỗ trợ giao tiếp Modbus RTU (loại nào có RS485 thì luôn hỗ trợ Modbus RTU)
    • Bấy kỳ PLC nào hỗ trợ cổng giao tiếp RS485 như: FX3U, FX3G, FX3S, FX3UC, S7-200, S7-400, S7-1200…đều có thể tích hợp với iNut Platform
  • Nguồn 24V cho PLC
  • Một mạch USB RS-485 cho việc thử nghiệm nếu không có PLC.

Để đảm bảo tính tổng quát cho bài viết này, mình sẽ xem như các bạn đã biết cách tự mình cài đặt cho PLC của mình truyền thông được RS-485 với các yêu cầu như trên. Tuy nhiên, có thể các bạn có thể cài đặt sai và nghĩ iNut PLC bị lỗi... devil nên mình khuyên các bạn nên chuẩn bị một mạch USB RS-485 để test iNut PLC có hoạt động hay không nhé! Mình thực sự khuyến nghị các bạn nên có một mạch USB RS-485 kèm theo (chỉ 15-25k mua ở đâu cũng có) để test iNut PLC trước khi dùng với PLC thật. Vì nó sẽ giúp các bạn ngồi một chỗ với chiếc máy tính của mình làm việc đồng bộ và làm quen với iNut PLC ^_^.

Kết nối iNut PLC

iNut PLC hỗ trợ các mức điện thế sau: 5VDC/9VDC/12VDC/19VDC/24VDC devil. Wow, rất nhiều phải không nào. Thích hợp cho nhiều dự án

Okay, sau khi cấp điện, các bạn tiến cành cài đặt mạng cho iNut PLC như sau (các bạn có thể kết nối tới wifi trong nhà hoặc ở những tủ điện không có wifi thì các bạn có thể kết nối với một loại usb wifi 3g nhé)

Kết nối PLC và iNut PLC

Okay sau khi đã cập điện okay cho iNut PLC, chúng ta sẽ có hình ảnh như sau:

Với PLC thật, các bạn chỉ cần truyền thông Modbus RTU Slave (Address = 1) với các thông số sau là thành công: 

  • ​Baudrate: 19200
  • Databits: 
  • Stopbits: 1
  • No parity

Tuy nhiên, có thể các bạn sẽ không có sẵn PLC, vì vậy với sự hỗ trợ của mạch USB RS-485, mình sẽ hướng dẫn các bạn giả lập một em PLC với chuẩn Modbus RTU hoàn toàn miễn phí!

Okay, cùng thử nghiệm với USB RS-485 nào!

Các bạn mở Windows command line lên bằng cách nhấn tổ hợp phím Windows + R (phím Windows là phím giữa Alt và Ctrl á). Sau đó gõ lệnh cmd và nhấn OK.

Tải chương trình giả lập PLC Modbus RTU diagslave

Trong bản lệnh hiện ra, bạn lần lượt chạy các lệnh sau (chép và dán vào từng lệnh một cho chắc nhé)

git clone https://github.com/ngohuynhngockhanh/diagslave.2.12

cd diagslave.2.12

cd win32

Chạy giả lập

Các bạn gắn USB RS-485 vào máy tính. Khi đã gắn thành công thì máy bạn sẽ nhận cổng COM. Ví dụ ở đây là COM13 (các bạn dân kỹ thuật nên sẽ biết tra cổng COM ở đâu rồi nhỉ? Nếu chưa biết xem qua ở đây).

Sau đó, mình chạy đoạn chương trình sau:

diagslave.exe -b 19200 -d 8 -s 1 -p none -m rtu -a 1 COM13

Ý nghĩa: Tạo một cổng Modbus RTU ảo với address slave là 1 baudrate 19200, databits 8, none parity và 1 stop bit ở cổng COM13.

Okay, lúc này bạn gắn USB RS485 và iNut PLC lại là nó sẽ chạy ra màn hình như thế này là ổn!

Thử nghiệm trên máy tính (test)

Thử nghiệm trên PLC Mitsu Fx3u(c) china

Làm webapp cho PLC

Ở bước này, các bạn sẽ làm webapp chạy trên máy tính. Ở bước dưới mình sẽ hướng dẫn các bạn tải webapp này lên server internet miễn phí là Heroku.

Cài đặt Node-RED

Các bạn mở Windows command line lên bằng cách nhấn tổ hợp phím Windows + R (phím Windows là phím giữa Alt và Ctrl á). Sau đó gõ lệnh cmd và nhấn OK.

 

Trong bản lệnh hiện ra, bạn lần lượt chạy các lệnh sau (chép và dán vào từng lệnh một cho chắc nhé)

Clone code về

git clone https://github.com/ngohuynhngockhanh/iNut-Node-RED-Kickstarter

cd iNut-Node-RED-Kickstarter

git checkout inut-plc-example2

Cài đặt

npm install

Chạy chương trình

npm start

Sau khi cài đặt xong, bạn sẽ có một thông báo như thế này:

Và các bạn truy cập vào http://127.0.0.1:1880/... để tiến hành xem khối lệnh nhé! Đây là giao diện của chúng ta.

Các bạn truy cập vào địa chỉ http://localhost:1880/ui/... để xem giao diện đồ họa nhé.

Okay, cài đặt xong rồi, bước tiếp theo là cập nhập các mã thông tin trong ví dụ mẫu cho phù hợp với các thiết bị iNut của bạn. 

Lấy mã thiết bị iNut PLC để xuất khối lệnh vào Node-red

Các bạn lần lượt làm theo các video sau:

Tuyệt vời, các bạn đã thành công, bây giờ các bạn có thể khám phá rất nhiều mẫu ví dụ về Node-red để tự làm một giao diện sáng tạo tại Cộng đồng Arduino Việt Nam - Cộng đồng học thuật chất lượng về tự động hóa tốt nhất.

Cách reset thiết bị iNut PLC

Để reset thiết bị iNut PLC, bạn nhấn giữ nút S1 trong vòng 10s nhé.

Hơn thế nữa

Bạn muốn chỉnh sửa thanh ghi D101 => D108 bằng các thanh ghi của bạn? Bạn muốn đọc số thực? Bạn muốn tắt chức năng thay đổi thay ghi từ xa đi? Bạn muốn đổi địa chỉ Slave Address mà iNut PLC sẽ yêu cầu PLC làm? Tất cả điều đó đều có thể làm được. Xin đón chờ bài viết tiếp theo về iNut PLC trên Cộng đồng Arduino Việt Nam nhé.

Rất mong sự đóng góp của các bạn để PLC ngày càng hoàn thiện.

Liên hệ Mr. Khánh 097 2768491 để được tư vấn hướng dẫn thêm nhé.

iNut Platform được trình bày lần đầu tiên với dự án kLaserCutter - Máy cắt laser IoT. Được đại diện cho sinh viên Việt Nam trình bày với cựu Tổng thống Hoa Kỳ Barrack Obama.

lên
6 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Lập trình Arduino trên mây với Arduino Create - Sự thay thế tạm thời cho Codebender

Như chúng ta đã biết, Arduino là một board mạch lập trình giúp những người yêu thích vọc vạch điện tử có thể làm nên những dự án ý nghĩa mà không cần qua bất cứ trường lớp chuyên môn nào cả. Vậy, ngoài việc lập trình trên máy tính trước đây, liệu có cách nào giúp chúng ta lập trình Arduino trên mây được hay không? Nếu là một người theo dõi Arduino.vn thường xuyên, thì chắc hẳn bạn biết đến Codebender. Tuy nhiên, vì các lý do về kinh phí hoạt động, codebender của chúng ta sẽ không còn cho phép biên dịch code miễn phí online vào cuối tháng 11/2016 nữa. Vậy, liệu đó có phải là dấu chấm hết cho cộng đồng chúng ta khi muốn biên dịch Arduino online? Câu trả lời là không, và tôi xin giới thiệu với bạn Arduino Create, một trình biên dịch Arduino IDE online của Arduino(dot)cc được phát triển sau codebender và cũng mới đi vào hoạt động trong năm 2016.

lên
16 thành viên đã đánh giá bài viết này hữu ích.