Thứ Sáu, 19 tháng 4, 2013

Lập trình PLC Delta với Module Analog DVP06XA-S

TÀI LIỆU KỸ THUẬT | CÁCH lập trình kết nối PLC Delta với module analog DVP06XA

Mở đầu :
    Analog và Digital là hai từ trong thuật ngữ tiếng Anh chuyên ngành điện dùng để chỉ 2 loại tín hiệu điện trong kỹ thuật số là tín hiệu tương tự - liên tục và tín hiệu số - rời rạc.
Module Analog là một phần không thể thiếu trong kỹ thuật lập trình PLC, chúng ta sẽ đi vào với ví dụ sử dụng Module DVP06XA-S. Đây là Module có tích hợp sẵn 4 ngõ vào Analog và 2 ngõ ra Analog, ứng dụng cho các dòng PLC DVP-SS, SX, SA,SC, SV. Ngoài ra có tích hợp truyền thông Modbus RS485, có thể kết nối và sử dụng trực tiếp qua truyền thông mạng mà không cần với PLC Delta.

Lập trình kết nối sử dụng lệnh kết ghép nối Module :
1. Hình ảnh Module DVP06XA-S :
Module PLC Delta DVP06XA
2. Sơ đồ đấu nối :
Ngõ vào Analog :
Chú ý khi kết nối ngõ vào dòng điện, ngõ vào V+ và I+ phải nối chung với nhau.

Ngõ ra Analog :

3. Độ phân giải và thông số ngõ vào/ra :
Ngõ vào :

- Điện áp vào :
Giải điện áp vào : + - 10V
Giải giá trị số : + - 2000
Độ phân giải : 12bit, 1 đơn vị số tương ứng với 5mV ngõ vào
- Dòng điện vào :
Giải dòng điện vào : + - 20mA
Giải giá trị số : + - 1000
Độ phân giải : 11 bit, 1 đơn vị số tương ứng với 20uA

Ngõ ra :
- Điện áp ra :
Giải điện áp ra : 0 ~ 10V
Giải giá trị số : 0 ~ 4000
Độ phân giải : 12bit, 1 đơn vị số tương ứng với 2.5mV ngõ ra
- Dòng điện ra :
Giải dòng điện ra : 0 ~ 20mA
Giải giá trị số : 0 ~ 4000
Độ phân giải : 11 bit, 1 đơn vị số tương ứng với 5uA

4. Địa chỉ thanh ghi kết nối :
Ngoài các thanh ghi lưu trữ code thể hiện loại Module, địa chỉ và giao thức truyền thông là các thanh ghi về chế độ Analog, giá trị số ngõ vào và ra, số lượng mẫu, ...
Ở đây chúng ta thực hiện ghép nối trực tiếp PLC và Module nên chỉ cần quan tâm tới thanh ghi về giá trị điều khiển Analog, cụ thể như sau :
a. Thanh ghi số 1: 
Chứa giá trị tương ứng với việc thiết lập chế độ (Mode) ngõ vào và ngõ ra Analog, gồm 16 bit :
Bit 15 - Bit 14 - Bit 13  - Bit 12 - Bit 11 - Bit 10 - Bit 9 - Bit 8 - Bit 7 - Bit 6 - Bit 5 - Bit 4 - Bit 3 - Bit 2 - Bit 1 Bit 0

Cài đặt chế độ ngõ vào: (CH1~CH4) 
Mode 0: chế độ điện áp (-10V~+10V).
Mode 1: chế độ điện áp (-6V~+10V). 
Mode 2: chế độ dòng điện (-12mA~+20mA). 
Mode 3: chế độ dòng điện (-20mA~+20mA). 
Mode 4: không sử dụng. 
Cài đặt chế độ ngõ ra: (CH5~CH6) 
Mode 0: chế độ điện áp (0V~10V).  
Mode 1: chế độ điện áp (2V~10V). 
Mode 2: chế độ dòng điện (4mA~20mA). 
Mode 3: chế độ dòng điện (0mA~20mA). 
Trong đó :
b11~b0 dùng để cài đặt chế độ làm việc cho 4 ngõ vào tín hiệu Analog (AD): CH1~CH4
b12~b15 dùng để cài đặt chế độ làm việc cho 2 ngõ ra tín hiệu Analog (DA): CH5~CH6

Mỗi kênh có bốn chế độ có thể được thiết lập riêng . Ví dụ: nếu cài đặt CH1 ở mode 0 (b2~b0=000), 
CH2 ở mode 1(b5~b3=001), CH3: mode 2 (b8~b6=010), CH4: mode 3(b11~b9=011), b0~b11 
cần phải nạp giá trị là H688. Nếu cài đặt CH5: mode 2 (b13~b12=10), CH6: mode 1 (b15~b14=01), 
b12~b15 cần nạp giá trị là H5. Mặc định thiết bị là H0000. 

Chú ý, các bit tính theo hệ nhị phân ( cơ số 2 ) và quy đổi thành hệ Thập lục phân - Hexa ( cơ số 16 ). Ký hiệu chữ H là chỉ số ở hệ Hexa, chữ K là hệ thập phân ( hệ cơ số 10 ). 

b. Thanh ghi số 6, 7, 8, 9: 
Hiển thị giá trị trung bình của ngõ vào Analog CH 1 ~ CH 4
Đây là các thanh ghi dùng để lấy trực tiếp các giá trị số đã quy đổi từ ngõ vào Analog và đã được xử lý lấy mẫu và chia giá trị trung bình.
c. Thanh ghi số 10, 11: 
Thanh ghi dùng để nạp giá trị số cho ngõ ra CH5 ~ CH6, phạm vi thiết lập là K0 ~ K4000. Mặc định là K0.

Ứng với giá trị số nạp vào, ngõ ra sẽ có mức tín hiệu Analog tương ứng theo chế độ đã cài đặt ở thanh ghi 1.

d. Thanh ghi số 18, 19, 20, 21: 
Thanh ghi dùng để hiệu chỉnh độ lệch tín hiệu ngõ vào CH1 ~ CH4. Thiết lập mặc định ban đầu là K0.
Điện áp: phạm vi thiết lập là K-1000 ~ K1000
Dòng điện: phạm vi thiết lập là K-1000 ~ K1000
e. Thanh ghi số 22, 23: 
Thanh ghi dùng để hiệu chỉnh độ lệch tín hiệu ngõ vào CH5 ~ CH6. Thiết lập mặc định ban đầu là K0.
Phạm vi thiết lập là K-2000 ~ K2000
f. Thanh ghi số 24, 25, 26, 27: 
Thanh ghi dùng để hiệu chỉnh độ khuếch đại tín hiệu ngõ vào CH1 ~ CH4. Thiết lập mặc định ban đầu là K1000.
Điện áp: phạm vi thiết lập là K-800 ~ K4000
Dòng điện: phạm vi thiết lập là K-800 ~ K2600
g. Thanh ghi số 28, 29: 
Thanh ghi dùng để hiệu chỉnh độ khuếch đại tín hiệu ngõ vào CH5 ~ CH6. Thiết lập mặc định ban đầu là K2000.
Phạm vi thiết lập là K-1600 ~ K8000

Chú ý
Các thanh ghi ở mục d,e,f,g dùng để hiệu chỉnh lại đường đặc tính ngõ vào ra. Hay chính là thiết lập lại dải tín hiệu Analog ngõ vào ra.

Ví dụ về Gain và Offset ( độ khuếch đại và độ lệch ):
- Giả sử ở chế độ Mode 0 của ngõ vào :
Theo mục a về thanh ghi số 1, ta có dải tín hiệu ngõ vào Mode 0 sẽ là :
-10V ~ +10V <=> K-2000 ~ K2000
=> Đường đặc tính tín hiệu ngõ vào là đường thẳng từ đi qua các điểm : ( -10;-2000 ),  ( 10;2000 ). 
=> Giá trị số = K200 * giá trị điện áp ngõ vào
          Y=200*X
Từ đó ta có đường đặc tính theo đồ thị hàm số trên, điểm Offset là điểm giao nhau giữa đường đặc tính và trục điện áp X, điểm Gain là điểm có giá trị số Y = K1000
=> Offset (0;0), Gain ( 5;1000)
- Ngược lại để có chế độ Mode 1: chế độ điện áp (-6V~+10V). Đường đặc tính tín hiệu ngõ vào là đường thẳng từ đi qua các điểm : (-6;-2000) , ( 10;2000).
=> Giá trị số = K250 * giá trị điện áp ngõ vào - K500
          Y=250*X - 500

Từ đó ta có đường đặc tính theo đồ thị hàm số và cũng tính điểm Offset là điểm giao nhau giữa đường đặc tính và trục điện áp X, điểm Gain là điểm có giá trị số Y = K1000
=> Offset (2;0), Gain ( 6;1000)
Tương tự với ngõ ra dòng điện, ta có đồ thị như hình bên dưới:

=> Với mỗi một dải tín hiệu Analog thực tế nào đó nằm trong giới hạn cho phép của kênh Analog trên Module, chúng ta đều có thể điều chính tương ứng với 2 mức giá trị số của Module.

5. Cách ghép nối vật lý và định địa chỉ Module : 
- Đối với PLC Delta, các modul I/O thông thường sẽ ghép nối mà không cần bất kỳ thiết lập nào.
- Các Module đặc biệt như Module Analog sẽ được tự động hoàn toàn định địa chỉ theo thứ tự gần với PLC nhất. Và tính từ K0 ~ K7. Chi tiết xem hình dưới đây :


Trong hình có sử dụng CPU DVP10SX và Module DVP-06XA, DVP-04AD
Theo thứ tự ta có: địa chỉ của Module DVP-06XA là 0, địa chỉ của Module DVP-04AD là 1.
Tối đa có thể lên tới 8 Module.

6. Cấu trúc lệnh kết nối dữ liệu tới địa chỉ thanh ghi của Module : 
a. Lệnh viết dữ liệu : TO
- Cấu trúc lệnh:
                         | TO |  m1 | m2 | S | n |
Trong đó : 
+ TO là tên lệnh
+ m1 là địa chỉ của Module theo thứ tự như mục số 5 đã nêu trên.
+ m2 là địa chỉ của thanh ghi cần kết nối tới, hay chính là chỉ số thanh ghi ở mục 4 đã nêu trên.
+ S là dữ liệu để viết vào thanh ghi. S có thể là hằng số hoặc dữ liệu dạng thanh ghi data trong PLC.
+ n là số thanh ghi được viết trong lệnh, tính từ địa chỉ m2.

- Cách viết lệnh: 
Trong cửa sổ lập trình, gõ trực tiếp câu lệnh theo cấu trúc trên. Xem ví dụ dưới đây :

- Ví dụ thực hiện lệnh TO để thiết lập chế độ ngõ vào / ra cho các kênh Analog :
Giả sử Module DVP06-XA được kết nối vào vị trí 0 như trên mục số 5, và chúng ta muốn thiết lập chế độ ngõ vào điện áp +-10V và chế độ ngõ ra dòng điện 0~20mA cho tất cả các kênh ngõ vào/ ra, ta có giá trị các bit như sau:
b15~b0 = 00 00 011 011 011 011 011 = H6DB
Và câu lệnh sẽ là :
                           | TO |  K0  | K1 | H6DB | K1 |


Kết quả :


Sau khi PLC RUN, bit M1002 sẽ ON và nạp giá trị H6DB xuống thanh ghi chế độ Analog cho Module. Và việc thiết lập này chỉ cần thực hiện 1 lần duy nhất trong chương trình PLC trước khi sử dụng các công việc liên quan đến Analog.


b. Lệnh đọc dữ liệu : FROM
- Cấu trúc lệnh:
                         | FROM |  m1 | m2 | D | n |
Trong đó : 
+ FROM là tên lệnh
+ m1 là địa chỉ của Module theo thứ tự như mục số 5 đã nêu trên.
+ m2 là địa chỉ của thanh ghi cần kết nối tới, hay chính là chỉ số thanh ghi ở mục 4 đã nêu trên.
+ D là dữ liệu lưu kết quả giá trị sau khi đọc từ Module lên. D là các dạng dữ liệu kiểu thanh ghi trong PLC.
+ n là số thanh ghi sẽ đọc lên trong lệnh, tính từ địa chỉ m2.
- Cách viết lệnh: 
Trong cửa sổ lập trình, gõ trực tiếp câu lệnh theo cấu trúc trên. Xem ví dụ dưới đây :

- Ví dụ thực hiện lệnh FROM để đọc giá trị các kênh kênh Analog ngõ vào :
Chúng ta vẫn giả sử theo ví dụ trên là Module DVP06-XA được kết nối vào vị trí 0 như trên mục số 5. Địa chỉ các thanh ghi lưu giá trị số sau khi biến đổi giá trị từ tín hiệu Analog ngõ vào và được xử lý tính toán trung bình là : thanh ghi 6, 7, 8, 9. Chi tiết địa chỉ thanh ghi, lập trình viên coi lại mục số 4 ở trên hoặc xem trong tài liệu đi kèm thiết bị.
Để đơn giản, chúng ta xem ví dụ đọc từng thanh ghi 1, với thanh ghi số 6 ta sẽ viết câu lệnh sau :


Trong đó, D150 là thanh ghi Data trên PLC được chọn làm nơi lưu kết quả của thanh ghi số 6 dưới Module Analog.
Làm tương tự với các thanh ghi còn lại, ta có đoạn chương trình đọc dữ liệu từ Module như sau :

Bit M1000 là bit trạng thái Run của PLC, khi PLC có lệnh RUN, các lệnh trên sẽ được thực hiện liên tục theo chu kỳ xử lý lệnh của PLC, kết quả sẽ được lưu vào các thanh ghi trong câu lệnh : 
CH1 => D150, CH2 => D152, CH3 => D154, CH4 => D156

Như vậy, chúng ta đã có thể truyền và nhận dữ liệu từ Module Analog, bây giờ các dữ liện đã có trên bộ nhớ của PLC, việc còn lại là xử lý tín hiệu và đưa ra kết quả cho các đoạn chương trình điều khiển thực hiện.
Nếu quý khách hàng cần thêm sự hỗ trợ xin vui lòng liên hệ qua Email, điện thoại hoặc tin nhắn, nhận xét trên Blog.
Chú ý, để tránh các trường hợp spam, blog đã khoá chế độ nhận xét tự do và chỉ để lại nhận xét nếu quý vị và các bạn đã đăng nhập tài khoản google. Rất mong nhận được sự ủng hộ của mọi người.
Cảm ơn và hẹn gặp lại !

Biên soạn : ©Nguyễn Bá Quỳnh - CN Điện tử - tự động hóa.
Xuất bản ngày 19/04/2013





11 nhận xét:

  1. Bài viết của bác rất cụ thể và hay!

    Trả lờiXóa
  2. Chào anh, anh có thể gửi cho em tài liệu cách lập trình, tín hiệu đầu vào là analog cho Plc được không ạ. em cảm ơn anh nhiều. Email: huynhanhthoai2891@gmail.com

    Trả lờiXóa
    Trả lời
    1. Bạn đang sử dụng Module nào ? Với mỗi loại Module sẽ có tài liệu riêng và cách làm riêng.

      Xóa
  3. Cảm ơn anh đã hướng dẫn rất chi tiết và dễ hiểu. Anh cho em hỏi chút đó là khi mình không ghép nối trực tiếp modunl với PLC mà mình sử dụng modbus rtu để truy cập dữ liệu thì mình đặt địa chỉ truyền thông cho modunl đó như thế nào ạ.

    Trả lờiXóa
    Trả lời
    1. hiện tại em có 2 modunl ADP-04PT và 1 plc FX3U của Misu. Em thấy trên modunl nhiệt của delta có cổng 485. Em đọc trong tài liệu thì thấy có cách cấu hình truyền thông và đặt địa chỉ cho trạm bằng phần mềm ( Địa chỉ đang mặc định là 1). Tuy nhiên em thắc mắc là giả sử như hệ thống mình có sẵn rồi (địa chỉ trạm slave đang là từ 1 -> 10). Giờ bổ sung thêm 1 vài modunl nhiệt kia thì phải làm thế nào để cấu hình lại địa chỉ cho từng modunl đó. Giờ phải thay đổi địa chỉ của trạm 1 ban đầu bằng 1 modunl nhiệt sau đó đổi lại địa chỉ. Thao tác như vậy với các modunl tiếp theo. Như vậy phải không anh.

      Xóa
    2. Việc này bắt buộc phải thiết lập cho từng cái 1. Sau đó mới kết nối cả hệ thống. Hướng đi của bạn đúng rồi đó.

      Xóa
    3. vâng. Cảm ơn anh nhé. Sắp tới triển khai có gì vướng mắc mong a giúp đỡ nhé.

      Xóa
  4. Anh ơi ,có thể giúp em đặt cấu hình cho modul vào ra analog được không em . Em đổi mã nhị phân ( bít ) sang hex không giống anh đổi

    Trả lờiXóa