• Hotline: 0989.000.420
  • Giới thiệu
  • Vai trò pn
  • Facbook hội pn
  • Sitemap
SỬA CHỮA ĐỘNG CƠ ĐIỆN YÊN BÁI

Vĩnh Kiên- Yên Bình- Yên Bái 0989 000 420- 038 540 7810

  • Trang chủ
  • Giới thiệu
    • Giới thiệu chung
    • Chức năng nhiệm vụ
    • Cơ cấu tổ chức
    • Các phòng chức năng nghiệp vụ
      • Văn phòng Ban QLDA Đầu tư xây dựng
      • Phòng Tài chính - Kế toán
      • Phòng Kế hoạch tổng hợp
      • Phòng Kỹ thuật - Thẩm định
      • Phòng Điều hành - Dự án
  • Thiết bị điện
  • Hệ thống DCS
    • Thiết kế tủ điện
    • Lập trình PLC
    • Giao diện DCS
    • Chuyển đối số
    • Modbus
    • Hệ thống rơ le bảo vệ
    • Lưới điện
  • Truyền thông công nghiệp
  • Config IEC104 , 61850
    • RS485
    • IEC104
    • IEC61850
    • Vòng quay may mắn
  • Máy điện
  • Góp ý
  • Liên hệ
Học Học Nữa - Học Mãi
Liên hệ quảng cáo
  • Trang chủ
  • C#

C# ASP.net blaser

Bởi Operator vào 02 thg 10, 2026
Chia sẻ
  • Sao chép liên kết
  • Chia sẻ với Facebook
  • Chia sẻ với X
  • Chia sẻ với Pinterest
  • Chia sẻ với Linkedin
  • Gửi bài qua Email

gửi email cho tác giả




     

    Tôi xây dựng scada trên C# tự build. Làm driver đọc modbus và gửi scada tự buil. Driver truyền theo chuẩn nào đến C# sacada. Scada chưa run time nhé. Làm sao chỉ mở file .sln mà nhận tag từ driver

    Đúng. Nếu mục tiêu của bạn là mở Visual Studio → mở .sln → chạy SCADA C# → SCADA tự nhận tag từ Driver, thì không nhất thiết phải dùng OPC UA/DA, WebSocket hay TCP.

    Với kiến trúc bạn đang xây dựng, cách đơn giản và nhanh nhất là:

                     CÙNG 1 SOLUTION
    ┌──────────────────────────────────────────────┐
    │                                              │
    │  ModbusDriver.cs                             │
    │       │                                      │
    │       │ đọc Modbus                           │
    │       ▼                                      │
    │  TagManager                                  │
    │       │                                      │
    │       │ object / event / callback            │
    │       ▼                                      │
    │  SCADA WinForms/WPF                          │
    │       │                                      │
    │       ├── Gauge                              │
    │       ├── Bar                                │
    │       ├── Meter                              │
    │       ├── Alarm                              │
    │       └── Trend                              │
    │                                              │
    └──────────────────────────────────────────────┘

    1. Nếu Driver và SCADA cùng chạy trong một chương trình

    Đây là phương án tôi nghĩ phù hợp nhất với SCADA mini của bạn hiện tại.

    Không cần giao thức truyền dữ liệu.

    Driver đọc Modbus:

    ModbusDriver
        ↓
    TagManager.SetValue()
        ↓
    TagManager
        ↓
    SCADA UI

    Ví dụ TagManager:

    public class TagValue
    {
        public string Name { get; set; }
        public object Value { get; set; }
        public DateTime Time { get; set; }
        public bool Quality { get; set; }
    }

    Sau đó:

    TagManager.SetValue(
        "PLC1.Temperature",
        75.3,
        true
    );

    SCADA chỉ cần:

    double value =
        Convert.ToDouble(TagManager.GetValue("PLC1.Temperature"));

    Hoặc tốt hơn nữa là dùng event:

    Modbus đọc 75.3
           ↓
    TagManager cập nhật
           ↓
    OnTagValueChanged
           ↓
    Gauge tự cập nhật 75.3

    Như vậy không có lớp trung gian.


    2. Nhưng nếu Driver là Driver.exe riêng thì khác

    Ví dụ bạn muốn:

    ModbusDriver.exe
    IEC104Driver.exe
    IEC61850Driver.exe
    OPCUADriver.exe
            │
            ▼
       truyền dữ liệu
            │
            ▼
       SCADA.exe

    Lúc này hai process khác nhau nên không thể truyền trực tiếp object C# qua RAM.

    Bạn phải dùng một giao thức IPC/network, ví dụ:

    Phương ánTốc độĐộ phức tạpPhù hợp
    Shared DLL / cùng processRất caoThấp⭐⭐⭐⭐⭐
    Named PipeRất caoTrung bình⭐⭐⭐⭐⭐
    Shared MemoryCực caoCao⭐⭐⭐⭐
    TCPCaoTrung bình⭐⭐⭐⭐
    WebSocketCaoTrung bình⭐⭐⭐⭐
    OPC UATrung bìnhCao⭐⭐⭐
    MQTTTrung bìnhTrung bình⭐⭐⭐

    SCADA mini của bạn không cần OPC UA chỉ để Driver → SCADA.


    3. Còn câu hỏi quan trọng của bạn: "chỉ mở .sln mà nhận tag từ Driver" thì làm thế nào?

    Có 2 trường hợp.

    Trường hợp A — Driver là Class Library

    Ví dụ Solution:

    MiniSCADA.sln
    
    ├── MiniSCADA
    │   ├── MainForm.cs
    │   ├── TagManager.cs
    │   └── Gauge.cs
    │
    ├── Drivers
    │   ├── ModbusDriver.cs
    │   ├── IEC104Driver.cs
    │   └── IEC61850Driver.cs
    │
    └── Config
        └── tags.csv

    Khi bạn chạy:

    MiniSCADA.exe

    SCADA khởi tạo:

    ModbusDriver modbus = new ModbusDriver();
    
    modbus.Start();

    Driver bắt đầu đọc:

    Modbus
     ↓
    ModbusDriver
     ↓
    TagManager
     ↓
    SCADA

    Bạn chỉ cần F5 trong Visual Studio, không cần chạy Driver riêng.

    Đây là kiến trúc tôi khuyên bạn dùng ở giai đoạn hiện tại.


    4. Còn Tag list nên nằm ở đâu?

    Đây mới là phần quan trọng để SCADA của bạn trở thành một SCADA thực sự.

    Ví dụ tags.csv:

    Name,Driver,Address,DataType,Description,Unit
    TEMP_001,Modbus,40001,Float,Nhiệt độ,°C
    PRESS_001,Modbus,40003,Float,Áp suất,bar
    MOTOR_001,Modbus,00001,Bool,Motor chạy,
    FLOW_001,Modbus,40005,Float,Lưu lượng,m3/h

    Khi SCADA chạy:

    tags.csv
        ↓
    TagManager.Load()
        ↓
    RAM
        ↓
    Driver tìm các tag của mình
        ↓
    đọc Modbus
        ↓
    cập nhật Value

    Ví dụ:

    TagManager
    
    TEMP_001
    Value = 72.5
    Quality = Good
    
    PRESS_001
    Value = 5.2
    Quality = Good
    
    MOTOR_001
    Value = true
    Quality = Good

    Sau đó Faceplate chỉ cần:

    Gauge → chọn TEMP_001
    Bar   → chọn PRESS_001
    LED   → chọn MOTOR_001

    Faceplate không cần biết Modbus là gì.

    Đây chính là điểm rất hay trong kiến trúc bạn đang xây.


    5. Tôi sẽ thiết kế kiến trúc của bạn như này

                        MiniSCADA.sln
                             │
              ┌──────────────┴──────────────┐
              │                             │
         TagManager                    DriverManager
              │                             │
              │                    ┌────────┼────────┐
              │                    │        │        │
              │                 Modbus    IEC104   IEC61850
              │                    │        │        │
              │                    └────────┼────────┘
              │                             │
              │                         Read/Write
              │                             │
              └───────────────┬─────────────┘
                              │
                        TagManager RAM
                              │
                     TagValueChanged
                              │
                 ┌────────────┼────────────┐
                 │            │            │
               Gauge         Bar          Meter
                 │            │            │
                 └────────────┼────────────┘
                              │
                            SCADA

    Điểm quan trọng là:

    Driver không truyền trực tiếp cho Gauge.

    Mà:

    Driver → TagManager → UI

    Đúng với kiến trúc bạn đã định hướng trước đó.


    6. Và không cần "SCADA Runtime" riêng

    Bạn đang nói "SCADA chưa runtime", tôi hiểu ý bạn là bạn muốn trong lúc phát triển:

    Visual Studio
         ↓
    mở MiniSCADA.sln
         ↓
    F5
         ↓
    SCADA chạy
         ↓
    Driver Modbus tự khởi động
         ↓
    TagManager tự load tags.csv
         ↓
    UI nhận tag

    Hoàn toàn làm được.

    Sau này khi đóng gói thành sản phẩm:

    MiniSCADA.exe
        │
        ├── drivers/
        │     ├── Modbus.dll
        │     ├── IEC104.dll
        │     └── IEC61850.dll
        │
        ├── config/
        │     └── tags.csv
        │
        └── project/
              └── project.json

    Người dùng không cần Visual Studio hay .sln nữa.

    Chỉ cần:

    MiniSCADA.exe

    là chạy.

    Với trường hợp của bạn, tôi sẽ không tách Driver.exe ngay.

    Ban đầu nên:

    ModbusDriver.cs
    IEC104Driver.cs
    IEC61850Driver.cs
            ↓
       TagManager.cs
            ↓
          UI

    Tất cả cùng process. Sau này nếu cần chống crash, cần chạy driver độc lập, hoặc muốn nhiều SCADA cùng lấy dữ liệu từ một driver thì mới tách:

    Driver.exe → Named Pipe/TCP/WebSocket → SCADA.exe

    Cách này sẽ giúp SCADA C# của bạn vừa rất nhanh, vừa đơn giản hơn nhiều so với việc ngay từ đầu phải dựng OPC UA giữa Driver và SCADA.


    Tôi làm web để giống node js hay fuxa vẫn kiểu trên nền C# thì dùng phần mềm nào

    Nếu ý bạn là SCADA vẫn viết C#, nhưng giao diện chạy trên trình duyệt như FUXA/Node.js, thì có vài hướng. Với kiến trúc Driver → TagManager → UI của bạn, tôi sẽ ưu tiên:

    1. ASP.NET Core + Blazor — phù hợp nhất

    Modbus Driver C#
    IEC104 Driver C#
    IEC61850 Driver C#
            ↓
       TagManager C#
            ↓
       ASP.NET Core
            ↓
     WebSocket / SignalR
            ↓
     Chrome / Edge
            ↓
     ┌──────┬──────┬──────┐
     Gauge  Bar   Trend  Alarm

    Bạn vẫn viết C# gần như toàn bộ, không cần chuyển sang Node.js.

    Đặc biệt Blazor cho phép xây UI web bằng C# thay vì phải viết toàn bộ JavaScript/Angular như FUXA.

    Ví dụ:

    MiniSCADA.sln
    │
    ├── Drivers
    │   ├── ModbusDriver.cs
    │   ├── IEC104Driver.cs
    │   └── IEC61850Driver.cs
    │
    ├── Core
    │   └── TagManager.cs
    │
    ├── Web
    │   ├── Gauge.razor
    │   ├── Bar.razor
    │   ├── Trend.razor
    │   └── Alarm.razor
    │
    └── Program.cs

    Sau đó mở:

    http://localhost:5000

    là thấy SCADA.


    2. ASP.NET Core + HTML/JavaScript

    Nếu muốn giao diện web mạnh và tự do hơn:

    C# Driver
       ↓
    TagManager
       ↓
    ASP.NET Core
       ↓
    SignalR/WebSocket
       ↓
    HTML + JavaScript

    Phần backend vẫn C#, nhưng giao diện dùng HTML/CSS/JS.

    Cách này gần với kiến trúc FUXA hơn.


    3. ASP.NET Core + React/Vue

    Nếu sau này muốn làm một SCADA web rất lớn:

    C# Driver
         ↓
    TagManager
         ↓
    ASP.NET Core API
         ↓
    WebSocket/SignalR
         ↓
    React/Vue

    Mạnh nhưng sẽ phức tạp hơn đáng kể.


    Với SCADA bạn đang xây, tôi chọn ASP.NET Core + Blazor

    Vì bạn đã có:

    Driver → TagManager → UI

    thì gần như chỉ thay:

    WinForms UI
         ↓
    Blazor Web UI

    còn phần quan trọng nhất vẫn giữ nguyên:

                 C#
     ┌────────────────────────┐
     │ Modbus                 │
     │ IEC104                 │
     │ IEC61850               │
     │ OPC UA                 │
     └───────────┬────────────┘
                 ↓
            TagManager
                 ↓
           SignalR
                 ↓
           Blazor Web
                 ↓
          Chrome / Edge

    SignalR sẽ rất hợp cho dữ liệu SCADA realtime: Driver cập nhật TEMP_001 = 72.5 → TagManager nhận → SignalR đẩy xuống trình duyệt → Gauge thay đổi ngay.

    Và quan trọng: không cần mỗi tag phải gọi HTTP liên tục.

    Nếu bạn muốn làm kiểu FUXA: kéo thả Gauge/Bar/LED, chọn Tag từ TagManager rồi lưu project, thì kiến trúc này cũng làm được.

    Nội dung chính
      0 Nhận xét
      Tags: C#

      Cùng chuyên mục

      Liên hệ quảng cáo

      Tin mới

        Liên hệ (Contact)

        Tên

        Email *

        Thông báo *

        Tìm kiếm (SEARCH)

        Main Tags

        • ADROID
        • Affiliate + Dropshipping
        • AGC
        • AI
        • analog
        • Apk adroid
        • âm nhạc
        • Âm thanh
        • Âm Thanh Xe Hơi
        • bản đồ địa chính
        • Bản tin xã Vĩnh Kiên
        • Bảo dưỡng xe MG
        • bảo hiểm
        • Bảo vệ môi Trường
        • beckhoff
        • bể phốt
        • Bệnh
        • biến áp xung
        • Biến áp xuyến
        • Biến tần
        • Biến tần KDE300A
        • biến tần Schneider
        • Biến tần Simens
        • biến tần yaskawa
        • blogspot
        • bộ hòa
        • bồn cầu
        • C#
        • C# web
        • C53 realme
        • các nhà phân phối
        • cad electrical 2019
        • cải tạo
        • cài win
        • camera
        • Chào mừng 8/3
        • Chat gpt
        • Chăm sóc sắc đẹp
        • chế tạo biến tần
        • Chi Bộ
        • Chi Đoàn
        • chỉ huy trưởng
        • chìa
        • Chìa khóa thành công
        • chung tay
        • chuyển đổi số
        • chuyên gia
        • CODE WIN CC
        • CODESYS
        • com ảo
        • Công Đoàn
        • công tác hội
        • Cơ điện tử
        • cp1243-7
        • Crack tia
        • dao diện tia
        • Dạy con ngoan giỏi
        • Dạy con thông minh
        • Dây điện từ
        • DCS
        • Dịch vụ
        • driver
        • Dso138
        • Dự án
        • Đảng - Đoàn thể
        • Đánh bóng ô tô
        • Đào tạo nghề
        • Đào tạo vận hành
        • đẩu tư Bất động sản
        • đầu tư tài chính
        • Điện
        • Điện trở
        • Điện tử công suất
        • điện tường
        • điều khiển nhiệt độ
        • điều tốc
        • Đồ điện sửa chữa
        • Động cơ điện 1 pha
        • Động cơ điện 3 pha
        • Động cơ mua bán
        • động cơ vạn năng
        • đục tường
        • encoder
        • encore
        • Enigma Protector
        • Excel
        • Facebook
        • factory io
        • fasstAPI
        • faststone capture
        • fuxa
        • game đế chế
        • Gia Đình
        • Góc học tập và làm theo lời Bác
        • GOV
        • grafana
        • graphana
        • hàn nhiệt
        • hàn ống
        • Hantek 2c42
        • HIK
        • HMI
        • hmi delta
        • hmi simnes
        • HMI Wedcon
        • Học chức danh
        • học tiếng anh
        • Hội thi
        • IEC
        • IEC 104
        • iec61850
        • IGBT
        • INVT
        • karaoke
        • Kaspersky Internet Security
        • KEP OPC
        • kepopc
        • key win cc oa
        • Khí cụ điện
        • khởi động mềm
        • khởi nghiệp
        • Kích
        • Kích cá
        • km
        • làm đẹp
        • Làm kinh tế giỏi
        • Lập công ty
        • lập trình zen
        • Lịch làm việc
        • Lịch sự
        • liệt não
        • Link kiện điện tử
        • logo simens
        • Lỗi phạt ô tô
        • mạch âm thanh
        • Mạch băm xung
        • Mạch nguồn xung
        • mạch nồi cơm
        • mạng
        • Máy biến áp
        • máy cắt
        • máy giặt
        • máy hàn
        • máy hàn chip
        • máy hàn tig wp 300
        • Máy lọc dầu
        • Máy phát điện
        • Máy phát điện xăng
        • máy tính
        • MG zs
        • Microstation SE
        • mobus
        • MODBUS
        • Module phát âm thanh MP3 DY-SV5W
        • mqtt
        • mua ô tô
        • mường hum
        • My Music
        • nart port
        • nậm ban2
        • next.js
        • nhẫn nhịn
        • node js
        • Note js
        • Nông thôn mới
        • odoo
        • OPC
        • OPC DA
        • opc. matrikon
        • OpenVPN
        • ổn áp
        • pdf
        • phân loại rác
        • Phật dạy
        • phong trào
        • Pid
        • PLC
        • plc abb
        • plc delta
        • Plc emerson
        • plc GE
        • plc LS
        • Plc Mitsubishi
        • PLC Mitsubishi FX1N
        • plc s7 200
        • plc s71200
        • PLC Schneider
        • plc sim avanced
        • plc simens
        • python
        • quản trị tài chính
        • Rapid SCADA
        • Raspberry Pi
        • remote destrop
        • Rơ le bảo vệ
        • Rơ le CMC và studio PSL
        • S7 1200
        • S7 200
        • S7300
        • Sách
        • sách tổ tự động
        • sát hạch lái xe
        • SCR
        • secvo
        • SERVO
        • Sheet nhạc
        • Sim mới
        • sơ đồ bếp từ
        • sơn ô tô
        • SQL server
        • SSR
        • Step ĐC
        • Sửa chữa dc
        • sức khỏe
        • Sưu tầm
        • Tai biến
        • tài khoản Simens
        • Tài liệu kỹ thuật
        • Tailscale
        • Tâm lý
        • Teamviewer
        • tenten
        • thái độ
        • thay bo mạch
        • thay đổi góc nhìn
        • Thể thao
        • thi an toàn
        • Thi đua - Khen thưởng
        • thị trường điện
        • thingboard
        • thingsboard
        • Thông tin đấu thầu
        • Thông tin xử phạt
        • Thời sự
        • thời tiết
        • Thủ thuật máy tính
        • thủy điện
        • thyristor
        • TIA V13 SP2 pro
        • TIA V14
        • tia v15
        • Tia v16
        • Tia V17
        • tia V21
        • Tin tức - Sự kiện
        • tivi
        • touchpad-blocker
        • trạm phát thanh
        • TRIANGLE IEC
        • Trồng cây mừng Đảng mừng xuân 2024
        • tủ điện
        • Tủ lạnh
        • uctra_iso
        • Văn bản - Tài liệu
        • VBS
        • Video
        • Video động. Cơ điện
        • Video quấn động cơ điện
        • vmware
        • Vòng bi
        • vpn
        • Web
        • websever S7 1200
        • wifi
        • wincc
        • WinCC Unified
        • Wondershare Filmora
        • woodwoard
        • word
        • WPF
        • wwin cc
        • xây dựng
        • xây nhà tầng 2
        • xe 2025
        • xe ô tô
        • xem tuổi xây nhà
        • Xiaozhi
        • youtube
        • zenon
        • zoho mail

        Thời tiết hiện tại

        Chat hỗ trợ
        Chat ngay

        Lịch làm việc

          Thông báo

          • Nông thôn mới
          • Phong trào
          • Công tác hội
          • Chăm sóc sắc đẹp
          • Chuyển đổi số

          Đọc nhiều

          • SPM-D10
            SPM-D10
            26 thg 10, 2025

             Rất hay — bạn đang gặp đúng vấn đề độ nhạy của bộ điều tốc (governor) khi hòa đồng bộ bằng SPM-D10 . Hiện tượng “điều tốc phản ứng quá nh...

          • EPLAN Electric P8 - Hướng dẫn cài đặt - Full Crack (Electric P8, Pro Panel)
            EPLAN Electric P8 - Hướng dẫn cài đặt - Full Crack (Electric P8, Pro Panel)
            04 thg 1, 2021

              EPLAN Electric P8  cung cấp khả năng không giới hạn để thiết kế, phác thảo, phát triển tài liệu dự án và quản lý các dự án tự động hóa. Xâ...

          • Kiểm tra tình trạng ổ cứng HDD bằng phần mềm CrystalDiskInfo
            Kiểm tra tình trạng ổ cứng HDD bằng phần mềm CrystalDiskInfo
            02 thg 5, 2024

              1 Kiểm tra tình trạng ổ cứng HDD bằng phần mềm CrystalDiskInfo CrystalDiskInfo  là phần mềm miễn phí giúp bạn kiểm tra tình trạng ổ cứng, ...

          • Thành công và thất bại
            Thành công và thất bại
            28 thg 1, 2021

             Để mà bắn trúng được đích thì bạn phải bắn trượt rất nhiều lần. Để mà thành công thì bạn phải trải qua những thất bại. Để mà đứng lên được ...

          • Bảo vệ so lệch Máy biến áp – Rơ le 87T
            Bảo vệ so lệch Máy biến áp – Rơ le 87T
            26 thg 2, 2019

            Bảo vệ so lệch máy biến áp là gì?  Bài viết này sẽ nêu rõ vai trò và nguyên lý hoạt động của bảo vệ so lệch máy biến áp 1. Vai trò c ủ a b...

          • 3. Biển báo hay gặp
            3. Biển báo hay gặp
            16 thg 2, 2025

            Các biển báo giao thông cần nhớ và thường hay gặp nhất TÓM TẮT NỘI DUNG BÀI VIẾT Những biển báo giao thông thường gặp cần phải ghi nhớ thật ...

          Có thể bạn quan tâm

            Ban biên tập

            Thế Hương

            ........

            ...........

            Thống kê

            Số người truy cập: Tổng lượt truy cập:
            Liên hệ quảng cáo
            Trang chủ
            Hotline: 0989.000.420
            Liên hệ
            RSS
            Lên đầu trang

            Cơ điện Huế Hương - Yên Bình -Yên Bái

            Địa chỉ: Xã Vĩnh Kiên - Yên Bình - Yên Bái
            Email: vuhuong.tbc@gmail.com
            Liên hệ: 0989000420

            Template blogspot bán hàng và bất động sản