Lý thuyết
Mạng CAN
Controller Area Network (CAN) là công nghệ mạng nối tiếp hỗ trợ các hệ thống điều khiển phân bố thời gian thực với độ ổn định và bảo mật cao Điểm nổi bật của chuẩn CAN là tính ổn định và an toàn, nhờ vào cơ chế phát hiện và xử lý lỗi mạnh mẽ, giúp giảm thiểu khả năng lỗi thông báo xuống dưới 4.7*10-11 Ban đầu được thiết kế cho ngành công nghiệp ô tô, CAN đã được chuẩn hóa quốc tế theo ISO 11898 và trở thành một bus phổ biến trong tự động hóa công nghiệp cũng như nhiều ứng dụng khác.
1.2 Kiến trúc giao thức Đối chiếu với mô hình ISO/OSI, CAN gồm: phần chính của lớp vật lý (physical) và lớp
Dữ liệu (Data link) bao gồm hai lớp con là LLC và MAC Các lớp từ 3 đến 6 không được hiển thị trong CAN, trong khi giao thức và dịch vụ của lớp ứng dụng (Application) được định nghĩa một cách cụ thể.
Lớp vật lý định nghĩa phương thức định thời, tạo nhịp bit (bit timing), phương pháp mã hóa bit và đồng bô ̣ hóa.
Lớp dữ liệu trong kiến trúc giao thức CAN bao gồm hai thành phần chính: Lớp MAC (Medium Access Control) và Lớp LLC Lớp MAC chịu trách nhiệm tạo khung thông báo, điều khiển truy cập môi trường, xác nhận thông báo và kiểm soát lỗi Trong khi đó, Lớp LLC liên quan đến các dịch vụ gửi dữ liệu, yêu cầu dữ liệu từ xa, lọc thông báo, báo cáo tình trạng quá tải và hồi phục trạng thái.
1.3 Cấu trúc mạng và kỹ thuật truyền dẫn
CAN không quy định chuẩn truyền dẫn cụ thể, nhưng trong thực tế, cáp đôi dây xoắn kết hợp với chuẩn RS-485 và cáp quang được sử dụng phổ biến Đối với cáp đôi dây xoắn, cấu trúc mạng thích hợp là đường thẳng theo kiểu trunkline/dropline, với chiều dài đường nhánh hạn chế dưới 0.3m và số trạm tối đa là 64 trạm.
CAN có khả năng phân biệt hai trạng thái logic của tín hiệu: mức trội (dominant) và mức lặn (recessive) Khi cả hai bít trội và lặn được phát đồng thời, bít trội sẽ lấn át, dẫn đến tín hiệu trên bus có mức trội Trong mạch AND, mức trội tương ứng với bit “0” và mức lặn tương ứng với bit “1”.
CAN sử dụng phương pháp mã hóa NRZ (Non-Return-to-Zero), có nghĩa là trong suốt 1 chu kỳ bit, mức tín hiê ̣u hoặc là trô ̣i hoặc là lặn.
Phương pháp truy nhập bus là CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance), tốc đô ̣ tối đa là 1Mbit/s ở khoảng cách 40m và 50kbit/s ở 1000m.
Chiều dài tối đa là 1km, để sử dụng bus dài hơn 1 km, phải cần mô ̣t hê ̣ thống kết nối trung gian như repeater hoặc bridge.
Viê ̣c bổ sung hay bỏ đi mô ̣t trạm trong mạng CAN không đòi hỏi bất cứ mô ̣t thay đổi nào về phần cứng hay phần mềm ở các trạm khác.
Mã căn cước không chỉ ra địa chỉ cụ thể của thông tin, mà chỉ thể hiện ý nghĩa của nó Mỗi trạm có quyền quyết định việc nhận và xử lý thông tin hay không.
Mỗi trạm trong mạng CAN có khả năng yêu cầu thông tin từ trạm khác thông qua việc gửi một REMOTE FRAME Trạm có thông tin cần thiết sẽ phản hồi bằng một DATA FRAME có mã căn cước tương ứng với khung yêu cầu Đặc trưng nổi bật của CAN là phương pháp định địa chỉ và giao tiếp hướng đối tượng, trong đó mỗi thông tin trao đổi được coi như một đối tượng và được gán một mã số căn cước (Identifier).
1.4 Cấu trúc dữ liệu và truy cập bus a) Cấu trúc frame truyền dữ liệu
CAN sử dụng phương pháp định địa chỉ theo đối tượng để quản lý các thông báo chứa dữ liệu quan trọng Các đối tượng này bao gồm giá trị đo, giá trị điều khiển và thông tin trạng thái, giúp tối ưu hóa quá trình truyền tải và xử lý thông tin trong hệ thống.
Mỗi Frame truyền trong giao thức CAN sẽ chứa một ô căn cước của đối tượng, với chiều dài 11 bit cho dạng khung chuẩn theo CAN2.0A hoặc 29 bit cho dạng khung mở rộng theo CAN2.0B.
CAN định nghĩa bốn kiểu khung truyền: Khung dữ liệu (DATA FRAME) mang dữ liệu từ một trạm truyền tới các trạm nhận; Khung yêu cầu dữ liệu (REMOTE FRAME) được gửi từ một trạm yêu cầu truyền khung dữ liệu kèm theo mã căn cước; Khung lỗi (ERROR FRAME) được phát đi từ bất kỳ trạm nào phát hiện lỗi trên bus; và Khung quá tải (OVERLOAD FRAME) được sử dụng để tạo khoảng cách thời gian bổ sung giữa hai DATA FRAME hoặc REMOTE FRAME khi một trạm gặp quá tải.
Một khung lỗi có thể được gửi từ bất kỳ trạm nào khi phát hiện lỗi trên bus, bao gồm cờ lỗi (Error Flag) và phân cách lỗi (Error Delimiter) Có hai loại lỗi: lỗi chủ động (Active Error) với cờ lỗi gồm 6 bit trỗi liền nhau, và lỗi bị động (Passive Error) với cờ lỗi là 6 bit lặn liền nhau, trừ khi bị ghi đè bởi các bit trỗi từ các trạm khác.
Phân cách lỗi được đánh dấu bằng 8 bit lặn liên tục. c) Khung quá tải
Khung quá tải có cấu trúc tương tự như khung lỗi, bao gồm cờ quá tải (Overload Flag) và phân cách quá tải (Overload Delimiter) Cờ quá tải được biểu thị bằng 6 bit trống liên tiếp, trong khi phân cách quá tải được đánh dấu bằng 8 bit lặn liên tục.
Tối đa 2 khung quá tải có thể sử dụng để tạo thời gian trễ giữa 2 khung dữ liê ̣u hoặc khung yêu cầu dữ liê ̣u. d) Truy cập bus
CAN sử dụng phương pháp truy cập bus CSMA/CA, trong đó mức ưu tiên truy cập được xác định dựa trên tính cấp thiết của nội dung thông báo Mức ưu tiên này cần được thiết lập cố định trước khi hệ thống hoạt động.
Mã căn cước không những mang ý nghĩa của dữ liê ̣u mà còn được sử dụng là mức ưu tiên.
Bất cứ trạm nào trong mạng cũng có thể gửi thông báo khi đường truyền rỗi.
Khi có hai hoặc nhiều trạm cùng đồng thời bắt đầu gửi thông báo thì viê ̣c phân xử xung đô ̣t sẽ dựa theo từng bit trong mã căn cước.
Nếu bit trô ̣i có giá trị “0” và bit lặn giá trị “1” thì mô ̣t thông báo có mã căn cước nhỏ nhất sẽ có mức ưu tiên cao nhất.
Trong trường hợp xảy ra va chạm giữa DATA FRAME và REMOTE FRAME với cùng mã căn cước thì DATA FRAME sẽ được ưu tiên.
Phương pháp truy cập này đảm bảo thông tin không bị mất mát mà còn nâng cao hiê ̣u quả sử dụng đường truyền.
1.5 Ứng dụng của mạng CAN
Mạng CAN được sử dụng phổ biến trong công nghiê ̣p ôtô.
Ngoài ra mạng CAN còn được sử dụng để phát triển các hê ̣ thống mạng truyền thông công nghiê ̣p như: CANopen, SDS, DeviceNet…
Chuẩn RS-485
Năm 1983, Hiệp hội công nghiệp điện tử (EIA) đã phê duyệt tiêu chuẩn truyền cân bằng RS-485, được ứng dụng rộng rãi trong các lĩnh vực công nghiệp, y tế và dân dụng Tiêu chuẩn RS-485 có thể được xem như một bước phát triển quan trọng trong công nghệ truyền thông.
RS232 là giao thức quan trọng trong truyền dữ liệu nối tiếp, cho phép người dùng giao tiếp với các thiết bị sử dụng kết nối RS232 thông qua bộ chuyển đổi RS232/RS485 Liên kết RS485 được thiết kế để thu nhận dữ liệu ở khoảng cách xa và điều khiển các ứng dụng, với khả năng hỗ trợ lên tới 32 trạm thu phát trên cùng một đường truyền Đặc biệt, tốc độ baud của RS485 có thể đạt đến 115.200 bps cho khoảng cách lên tới 4000 feet (1200m).
Hệ thống truyền dẫn cân bằng bao gồm hai dây tín hiệu A và B mà không cần dây mass Tín hiệu trên hai dây này có sự đối kháng, tức là khi tín hiệu trên dây A ở mức cao thì tín hiệu trên dây B sẽ ở mức thấp và ngược lại Điều này giúp giảm thiểu nhiễu và cải thiện chất lượng tín hiệu trong quá trình truyền tải.
Cặp dây xoắn (Twisted-pair wire) là loại dây gồm hai sợi có chiều dài bằng nhau được xoắn lại với nhau, giúp giảm thiểu nhiễu khi truyền tín hiệu, đặc biệt là ở khoảng cách xa và với tốc độ cao.
Trở kháng đặc tính cặp dây xoắn.
Trở kháng đặc tính (Zo) của dây dẫn phụ thuộc vào hình dáng và chất liệu cách điện, và thường được nhà sản xuất chỉ rõ Theo khuyến cáo, trở kháng đặc tính của đường dây nên nằm trong khoảng từ
100 - 120Ω nhưng không phải lúc nào cũng đúng như vậy.
Trong hệ thống truyền dẫn cân bằng với hai dây A và B, tín hiệu mức cao TTL được xác định khi điện áp của dây A lớn hơn dây B tối thiểu 200mV, trong khi tín hiệu mức thấp TTL được quy định khi điện áp của dây A nhỏ hơn dây B tối thiểu cũng 200mV Nếu điện áp VAB nằm trong khoảng -200mV đến 200mV, tín hiệu sẽ rơi vào vùng bất định Điện thế của mỗi dây tín hiệu so với mass bên thu phải nằm trong khoảng -7V đến +12V.
Thông số Điều kiện Tối thiểu Tối đa Điện áp đầu ra hở mạch ±1.5V ±6V Điện áp đầu ra khi có tải RLOAD = 54Ω ±1.5V ±5V
Dòng ra ngắn mạch ±250mA
Thời gian quá độ đầu ra RLOAD = 54Ω
CLOAD = 54pF 30% TB Điện áp chế độ chung đầu ra V OC RLOAD = 54Ω -1V 3V Độ nhạy cảm đầu vào -7V ≤ VCM ≤ 12V ±200mA Điện áp chế độ chung V CM -7V 12V
Bảng 2.1: Tóm tắt thông số quan trọng của RS-485
Trong hệ thống điều khiển, chỉ một trạm có thể kiểm soát đường dẫn và phát tín hiệu tại một thời điểm Để đảm bảo tính linh hoạt, mỗi bộ kích thích cần chuyển về chế độ trở kháng cao khi không hoạt động, cho phép các bộ kích thích ở các trạm khác có thể tham gia vào quá trình điều khiển trong chế độ Tri-state.
- Trong mạch của bộ kích thích RS-485 có 1 tín hiệu vào ENABLE dùng để chuyển bộ kích thích về trạng thái phát tín hiệu hoặc tri-state.
Hình 2.1: Bộ kích thích và bộ thu RS-485
- Trạng thái logic của tín hiệu chỉ được định nghĩa trong khoảng từ ±1.5V đến ±5V đối với đầu ra (bên phát) và từ ±0.2V đến ±5V đối với đầu vào (bên thu)
Hình 2.2: Trạng thái logic của tín hiệu RS-485
Tín hiệu truyền dẫn gồm hai dây không có dây mass, do đó cần tham chiếu đến một điểm chung, có thể là mass hoặc một mức điện áp cho phép Điện áp kiểu chung (Common-mode voltage - VCM) được định nghĩa toán học là giá trị trung bình của hai điện áp tín hiệu được tham chiếu với mass hoặc điểm chung.
Khi tín hiệu trên hai dây được tham chiếu đến điểm chung là đất (Ground), cần phải xem xét kỹ lưỡng để đảm bảo độ chính xác Bộ nhận sẽ xác định tín hiệu bằng cách so sánh với đất tại nơi nhận; nếu có sự chênh lệch điện thế giữa nơi nhận và nơi phát vượt quá ngưỡng cho phép, tín hiệu thu được có thể bị sai lệch hoặc gây hỏng thiết bị Điều này cho thấy mạng RS485 mặc dù chỉ có hai dây nhưng lại liên quan đến ba mức điện áp khác nhau Do đất là một vật dẫn điện không hoàn hảo với điện trở xác định, điều này dẫn đến chênh lệch điện thế giữa các điểm, đặc biệt ở những khu vực có nhiều sấm sét, thiết bị tiêu thụ dòng lớn và các bộ chuyển đổi được nối đất.
Chuẩn RS485 cho phép chênh lệch điện thế đất tối đa là 7V, vượt quá mức này sẽ không được chấp nhận Do đó, đất không phải là điểm tham chiếu đáng tin cậy Để cải thiện việc truyền tín hiệu, nên sử dụng thêm một dây thứ ba, kết nối với mass tại nguồn cung cấp, nhằm tạo ra điện áp tham chiếu ổn định hơn.
Khi mạng RS485 ở trạng thái rảnh, tất cả các khối thu lắng nghe đường truyền trong khi các khối phát ở trạng thái tổng trở cao, cách li với đường truyền, khiến trạng thái của đường truyền trở nên bất định Nếu -200mV ≤ VAB ≤ 200mV, trạng thái logic tại ngõ ra khối thu sẽ phản ánh giá trị của bit cuối cùng nhận được Tuy nhiên, điều này không đảm bảo tính chính xác, vì trạng thái rảnh trong truyền dữ liệu nối tiếp cần phải duy trì ở mức cao để tránh nhầm lẫn cho khối thu về sự xuất hiện của dữ liệu trên đường truyền.
Để duy trì trạng thái mức cao cho đường truyền khi đường truyền rảnh, cần thực hiện phân cực đường truyền (Biasing) Việc sử dụng một điện trở R kéo lên nguồn ở đường A và một điện trở R kéo xuống mass ở đường B sẽ đảm bảo rằng VAB đạt giá trị tối thiểu là 200mV, từ đó ép đường truyền lên mức cao.
Số trạm tham gia lớn nhất 32 trạm
Tốc độ truyền dẫn lớn nhất 10MBit/s
Chiều dài dây cáp lớn nhất 1200m
Loại tín hiệu Tín hiệu vi sai cân bằng
Cấu trúc mạng Point-to-point
Dây cáp Phổ biến nhất là cáp đôi xoắn (chống tạp nhiễu và xuyên âm)
1/ 2 dây: chế độ làm việc bán song công2/ 4 dây: chế độ làm việc song công
Hình 2.3: Cấu hình mạng RS-485 2 dây
Hình 2.4: Cấu hình mạng RS-485 4 dây
Hình 2.5: Các phương pháp chặn đầu cuối
Chức năng các chân RS-485
DB9 Pin Tên Chức năng
Tín hiệu điều khiển được sử dụng khi modem thông báo cho máy tính biết rằng máy tính đó có thể dùng cho việc truyền dữ liệu
Dùng cho việc truyền dữ liệu giữa 2 nguồn (một ví dụ là dữ liệu được nhận từ modem sau đó được truyền tới máy tính)
3 TXD Transmit Data Dùng cho việc truyền dữ liệu đi
Tín hiệu thể hiện rằng máy tính sẵn sàng cho việc truyền dữ liệu
5 GND System Ground Nối đất, cơ sở để đo lường điện áp trong mạch, hoặc tản dòng điện bị rò rỉ
Trái với tín hiệu DTR, tín hiệu này thông báo cho máy tính hoặc đầu cuối rằng modem đang hoạt động và có thể nhận dữ liệu
Yêu cầu RTS (Request To Send) là tín hiệu cần thiết để kích hoạt mức điện áp dương, cho phép thực hiện yêu cầu gửi dữ liệu Tín hiệu này đảm bảo rằng quá trình truyền dữ liệu giữa tập dữ liệu và thiết bị đầu cuối có thể diễn ra một cách suôn sẻ mà không cần sự can thiệp từ bên ngoài.
Gửi tín hiệu sau khi kết nối dữ liệu đầu cuối với modem, mục đích để dữ liệu đầu cuối xác nhận bắt đầu việc truyền thông
Tín hiệu này cho thấy modem đang xử lý dữ liệu khi phát hiện tần số thấp Mặc dù có cảnh báo, nhưng nó không ảnh hưởng đến quá trình truyền dữ liệu giữa các thiết bị.
Cách kết nối chân RS-485:
Hình 2.7: Sơ đồ chân TXD và RXD với jack DB9
Hình 2.8: Sơ đồ chân TXD và RXD với jack DB25
Hình 2.9: Kết nối chân RS-485 theo kiểu truyền bán song công
Hình 2.10: Kết nối chân RS-485 theo kiểu truyền song công
Thiết kế, mô phỏng hệ thống
Thiết kế phần cứng
2 Xây dựng cấu trúc mạng
Tại trung tâm điều khiển:
Tại trạm điều khiển bơm A và B:
Giá thành của hệ thống
Tên thiết bị Hãng sản xuất
Số lượ ng Đơn giá (đồng)
Siemens 1 2,583,031 2,583,031 http://siemens- vietnam.vn/pro duct/bo-lap- trinh-simatic- s7-1200-cpu-1215c-dc-dc- dc-6es7215-1ag40-0xb0/
Siemens 1 10,273,205 10,273,205 https://www.plc - city.com/shop/e n/siemens- simatic-s7- 1200- communication - modules/3rk724 3-2aa30- 0xb0.html? gmc_currency= 3
Siemens 4 4,608,837 18,435,348 https://www.eb ay.com/itm/254 582882215
Schneider 2 424.000 848.000 https://codienha iau.com/product /contactor- schneider- lc1d18-ac/
Schneider 2 321.000 642.000 https://codienha iau.com/product /ro-le- schneider- lrd22/
Super 2 1.430.000 2.860.000 https://maybom. com/may-bom- cao-ap-super- win-sp370- 1531-pro.html Đèn báo Schneider
Schneider 5 36.000 180.000 https://codienha iau.com/product /den-bao- schneider- xa2evq4lc/
Schneider 9 27.000 243.000 https://codienha iau.com/product /nut-nhan-nha- schneider- xa2ea31/
Mô phỏng hệ thống trong TIA portal
3.4 Giao diện HMI https://drive.google.com/file/d/1og5IFGrvksSn00RfauCw3SyQs0oXZ7Y7/view?usp=sharing