Sửa chữa bảo dưỡng động cơ điện các loại

Cơ điện HUẾ HƯƠNG chuyên: - Quấn mới, sửa chữa động cơ điện, mô tơ điện các loại.... - Máy phát điện. - Nồi cơm điện, quạt điện.... - Nhận làm kích điện

Nhận làm mạch invert 12 ra 220V, mạch kích cá công suất theo yêu cầu

Công suất 1000W: Đánh bắt cá trên thuyền (sông, ao, hồ...).

Nhận lắp đặt tủ điện bảng điện

Sửa chữa thay thế lắp mới bảng điện tủ điện điều khiển động cơ

Bán Ronha kiểm tra roto

Ronha thiết bị không thể thiếu thợ điện cơ. Bán phân phối toàn quốc

Bán sách, sơ đồ quấn các loại động cơ, tài liệu

Sách kinh nghiệm ghi chép tất cả các sơ đồ động cơ, máy phát điện từ đơn giản đến phức tạp, sách được ghi từ số liệu thực tế, dữ liệu được scan lại

Hiển thị các bài đăng có nhãn SERVO. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn SERVO. Hiển thị tất cả bài đăng

Thứ Năm, 14 tháng 10, 2021

Đấu nối theo sơ đồ MR J2S

https://thanhphan.vn/so-do-ket-noi-servo-mitsubishi-mr-j2s-10a

https://thanhphan.vn/plc-dieu-khien-servo-mr-j2s-a

Thứ Hai, 16 tháng 8, 2021

Modbus một dạng truyền thông theo mô hình Slave – Master trên đường truyền vật lý RS485 hoặc RS232 được sử dụng rộng rãi thay thế cho các chuẩn truyền thông cũ như analog 4-20mA , Analog 0-10V , Digital …

 

Modbus là gì và nó hoạt động thế nào ?

Modbus là một chuẩn truyền thông công nghiệp được phát triển bởi Modicon ( nay thuộc về Schneider ) vào năm 1979 thay thế các chuẩn truyền thông truyền thống để truyền về PLC hoặc Scada. Cách hoạt động của Modbus dựa trên nguyên tắc Master – Slave trên đường truyền RS232 và RS485.

modbus RTU
Mô hình kết nối tín hiêu modbus rtu đưa lên internet

Modbus trở thành một chuẩn truyền thông công nghiệp tiêu chuẩn bởi nó : ổn định – đơn giản – dể sử dụng & miễn phí. Điều này có nghĩa rằng các nhà sản xuất có thể tự tích hợp chuẩn Modbus vào sản phẩm của họ mà không cần trả tiền bản quyền.

Chỉ cẩn các thiết bị cùng chung một chuẩn với nhau thì có thể giao tiếp với nhau mà không cần quan tâm nó là thiết bị gì của hãng nào sản xuất. Đây chính là ưu điểm vượt trội so với các chuẩn truyền thông khác như : Profibus , Canopen , Manchester

Modbus được sử dụng để kết nối với máy tính với các thiết bị đầu cuối ( RTU ) hay hệ thống SCADA ). Có nhiều loại Modbus : Modbus RTU , Modbus ASCII , Modbus TCP/IP

Ứng dụng của Modbus RTU

Sử dụng chuẩn truyền thông Modbus RTU giúp kết nối tất cả các thiết bị ( max 128 địa chỉ ) trên 2 dây tín hiệu RS485 .

ứng dụng modbus rtu
Các modbus slave nhận dữ liệu từ analog truyền về máy tính thông qua 2 dây RS485

Với mỗi modbus Slave tương ứng với một từ 4-8 tín hiệu Analog đầu vào hoặc nhiều hơn với 10 Digital. Các tín hiệu mắc song song nhau truyền vào Gateway để truyền lên internet thông qua Modul R-Key hoặc Z-key.

Như vậy tất cả các tín hiệu chỉ truyền đi trên 2 dây cho rất nhiều loại tín hiệu khác nhau thông qua các Modul Modbus RTU. PLC hay các thiết bị có chuẩn Moddbus có thể giao tiếp với các thiết bị đo tại bất kỳ nơi nào thông qua Modbus TCP hay còn gọi là Modbus IP.

Modbus hoạt động như thế nào

Modbus RTU hoạt động dựa trên nguyên tắc Master – Slave tức là một bên nhận ( Master ) và một bên truyền tín hiệu ( Slave ) thông qua địa chỉ thanh ghi. Phương thức truyền của Modbus RTU bằng đường truyền vật lý RS232 hoặc RS485, Modbus TCP/IP thì truyền trên địa chỉ IT thông qua Internet.

bo chuyen doi analog sang modbus
Cách chuyển đổi tín hiệu 4-20mA sang RS485

Bộ chuyển đổi Z-8AI nhận 8 tín hiệu analog dạng 4-20mA hoặc 0-10V chuyển sang Modbus RTU 2 dây trên nên tảng RS485 thông qua hệ Hexadecimal.

Hệ số Hexadecimal là gì ?

Chúng ta đã quá quen thuộc với việc sử dụng hệ số thập phân từ 0….9 tuy nhiên trong lập trình lại tồn tại nhiều hệ số khác nhau như : hệ nhị phân ( binary ) , hệ 8 ( octal ) ngoài ra còn có hệ 16 ( Hex ) hay còn gọi là thập lục phân

Modbus RTU sử dụng hệ Hexa nên chúng ta chỉ quan tâm tới hệ 16 này thôi nhé .

hệ 16 hexa
Hệ 16 hexa

Hệ thập lục phân được quy định từ 0…F tương ứng với 0…15 trong hệ thập phân chúng ta thường hay sử dụng. Mỗi 4 bit được biểu thị trong 16 ký tự từ 0…F tương ứng 0000….1111 trong hệ nhị phân.

Dữ liệu truyền trên Modbus như thế nào ?

Dữ liệu được lưu trữ trong Slave trong 4 bảng khác nhau với hai bảng lưu trữ On/OFF các giá trị Coil và hai thanh ghi lưu trữ. Các thanh ghi này đều có khả năng đọc và ghi. Mỗi thanh ghi có 1 Word = 16 bit = 2 bytes có địa chỉ từ 0000 đến 260E.

Coil được xem như là địa chỉ của thanh ghi Ví dụ 40001 có địa chỉ dữ liệu là 0000 các giá trị này có thể lệch nhau 1 , 10001 , 30001 , 40001.

Modbus RTU RS 485
Cách truyền dữ liệu trên Modbus RTU RS 485

Phân biệt RS232 và RS485

RS232 là gì ?

RS232 còn được gọi là cổng COM thường được thấy trong các máy tính bàn & tất cả đều có công truyền thông theo chuẩn RS232 để giao tiếp các thiết bị khác như máy in , máy fax ….

RS-232 sử dụng 3 dây Tx ( truyền ) , Rx ( nhận tín hiệu ) và GND ( đất ). RS 232 hoạt động dựa trên sự chênh lệch áp giữa TX , Rx và GND

– Nhược điểm của chuẩn truyền RS232 là tín hiệu không thể truyền đi xa, do việc mất mát tín hiệu không thể phục hồi được , và việc kết nối theo chuẩn RS232 chỉ được thực hiện giao tiếp giữa 2 thiết bị (point – to – point) nên hạn chế số lượng thiết bị có trong mạng .
– Một số đặc điểm của chuẩn truyền RS232 là : khoảng cách truyền tối đa là 15m, tốc độ truyền là 20Kbps, hỗ trợ kết nối điểm – điểm trên một mạng

chuẩn RS 232
Kết nối PLC với máy tính dùng cổng RS 232

RS485

Chuẩn RS 485 chỉ truyền trên 2 dây và B sử dụng sự chênh lệch áp giữa A và B theo logic 0 hoặc 1 chứ không hề so sánh với đất. Điều này đảm bảo tín hiệu truyền đi xa bởi khi nếu có trường hợp sụt áp thì đồng thời hai dây đều sụt áp nên tín hiệu vẫn đảm bảo logic 1 hoặc 0.

giao tiếp RS485
Mô hình giao tiếp RS485

Giả sử A = 1, B= 0 thì thì dữ liệu nhận biết data = 1 và khi A=0 , B=1 thì dữ liệu nhận biết là data = 0. Do cách so sánh trên thì khi bị suy giảm thì sữ chênh lệch điện áp vẫn không đổi chính vì thế mà tín hiệu truyền trên RS 485 đi rất xa mà vẩn đảm bảo chính xác.

+ Khi sự chênh lệch điện áp giữa A và B nằm trong khoảng -1,6V đến -6V thì dữ liệu được nhận tương ứng với mức 1 .
+ Khi sự chênh lệch điện áp giữa A và B nằm trong khoảng +1,5 đến +6V thì dữ liệu được nhận tương ứng với mức 0 .

Ưu điểm lớn nhất của chuẩn RS 485 chính là truyền đi xa tới 1200m và có thể kết nối nhiều thiết bị trên cùng một mạng chuẩn RS 485 và kết nối tối đa 32 thiết bị cùng lúc.

Sự khác nhau giữa RS 232 và RS 485

  • RS 232 chỉ cho phép truyền theo phương thức điểm ( point ) – điểm ( point ) trong khi RS 485 truyền theo phương thức đa điểm. Tức là có thể truyền nhiều tín hiệu khác nhau trong cùng một mạng ( max 32 thiết bị )
  • Tốc độ truyền của RS232 ( 20 Kbits/s ) nhanh nhưng khoảng cách truyền ngắn ( max 15m ). Ngược lại, RS485 ( 10Mbit/s ) có thể truyền đi xa ( max 1200m ) nhưng với tốc độ chậm hơn RS232

Sử dụng Modbus RTU

Sự phát triển của công nghệ PLC hay Scada chỉ cần có chuẩn truyền thông Modbus RTU là có thể nhận hết tất cả các thiết bị Digital hoặc Analog thông qua các bộ chuyển đổi tín hiệu Modbus.

Tuy nhiên phần lớn các tín hiệu truyền về PLC hay Scada đều dạng Digital , Analog , nhiệt độ …Để giải quyết vấn đề này chúng ta cần sử dụng các bộ chuyển đổi tín hiệu chuyên dụng sang Modbus.

Cách kết nối Master – Slave Modbus RTU

cách kết nối Modbus RTU Master-Slave
Cách kết nối Modbus RTU Master – Slave chuẩn

Hiểu được bản chất truyền tín hiệu của Modbus RTU giúp kết nối các tín hiệu chuẩn Modbus RTU một cách chính xác nhất. Tất cả các tín hiệu chuẩn Modbus RTU được mắc song song nhau trên hai dây truyền về Master qua chuẩn RS485.

kết nối Modbus RTU sai
Cách kết nối Modbus RTU – Sai

Các loại Modbus 

Trong công nghiệp – tự động hoá có 03 loại Modbbus thông dụng Modbus RTU , Modbus ASCII , Modbus TCP/IP . Sự khác nhau giữa các loại Modbus :

  • Modbus RTU : mã hoá dạng nhị phân với 1 byte dữ liệu và một byte truyền thông có tốc độ truyền 9600 – 57600 baud .
  • Modbus ASC II : đươc mã hoá dạng hexadecimal – 4 bit , cần 2 byte truyền thông cho một byte thông tin .
  • Còn Modbus TCP/IP : Modbus TCP là modbus RTU qua internet hay còn gọi là Modbbus IP tương ứng với một địa chỉ là một IP .

Với các loại Modbus trên thì Modbus IP đang dần được nhiều nhà lấp trình sử dụng do sự tiện lợi và truy cập mọi nơi có internet .

Bộ chuyển đổi tin hiệu Digital sang Modbus

Bạn hãy thử tưởng tượng xem 10 tín hiệu Digital sẽ được bộ chuyển đổi Z-10-D-IN chuyển đổi sang Modbus RTU. Với các dự án lớn có 100 tín hiệu Digital thì chúng ta chỉ cần dùng 10 bộ Z-10-D-IN mắc song song nhau đưa về 2 dây tín hiệu Modbus RTU để giải quyết vấn đề kết nối dây tín hiệu.

bộ chuyển đổi Digital sang Modbus RTU
Phương pháp chuyển đổi Digital sang Modbus RTU

Sử dụng Z-10-D-IN tiết kiệm chi phí và không gian lắp đặt cho tủ điện

Điều đặc biệt là Modul chuyển đổi Digital sang Modbus này có thể nhận các loại tín hiệu Digital khác nhau : relay , PNP , NPN , Namur và cả tần số.

Bộ chuyển đổi nhiệt độ Pt100 sang Modbus

bộ chuyển đổi Pt100 sang Modbus
Chuyển đổi tín hiệu nhiệt độ từ pt100 sang modbus rtu

Bộ chuyển đổi Z-4RTD2 nhận cùng lúc 4 tín hiệu RTD loại Pt100 sang Modbus RTU RS485 2 dây. Thang đo của 4 cảm biến nhiệt độ pt100 được đọc trong thanh ghi của Z-4RTD2.

Các loại tín hiệu RTD mà Z-4RTD2 có thể nhận loại 2 dây , 3 dây , 4 dây

  • Pt100 : -200 … 650oC
  • NI100 : -60… 250oC
  • Pt500 : -200 … 750oC
  • Pt1000 : -200…210oc

Bộ chuyển đổi tín hiệu Thermocouple sang Modbus

bộ chuyển đổi Thermocouple sang Modbus
Chuyển đổi nhiều tín hiệuThermocouple sang Modbus RS485

Bộ chuyển đổi Z-4TC nhận 4 tín hiệu nhiệt độ dạng Thermocouple cho ra Modbus RTU

Tương tự bộ chuyển đổi Z-4RTD2 thì bộ chuyển đổi Z-4TC nhận được 4 tín hiệu riêng biệt nhưng dạng Thermocouple. Các loại tín hiệu Thermocouple ( can nhiệt ) mà Z-4TC nhận được :

  • Thermocouple loại K với thang đo từ -210….1372oC
  • Thermocouple loại J thang đo nhiệt độ từ -210…1200oC
  • Can nhiệt loại E : -200…1000oC
  • Can nhiệt loại N : -210…1300oC
  • Cảm biến nhiệt độ loại S
  • Cảm biến nhiệt độ loại R
  • Thermocouple loại T
  • Thermocouple loại B
  • Tín hiệu milivoltage

Bộ chuyển đổi tín hiệu Z-4AI

bộ chuyển đổi 4 Analog sang Modbus RTU
Z-4AI Seneca nhận 4 tín hiệu analog chuyển sang modbus rs485

Bộ chuyển đổi Z-4AI nhận cùng lúc 4 tín hiệu analog dạng 4-20mA hoặc 0-10V độc lập nhau chuyển đổi thành tín hiệu Modbus RTU đưa về Scada.

Các giá trị 4-20mA / 0-10V có thể xem kẽ lẫn nhau tức là bộ Z-4AI có thể nhận 3 tín hiệu 4-20mA và 1 tín hiệu 0-10V cho từng kênh độc lập.

Sai số 0.1% trên toàn Input đầu vào đảm bảo tín hiệu truyền đi không bị biến đổi so với đầu vào. Thời gian đáp ứng nhanh nhỏ hơn 10ms đáp ứng nhanh cho các yêu cầu cần độ chính xác cao.

Bộ chuyển đổi tín hiệu Z-8AI

bộ chuyển đổi tín hiệu Z-8AI
Z-8AI Seneca input 8 tín hiệu 4-20mA output RS485

Nếu chúng ta có nhiều hơn 4 tín hiệu analog đầu vào thì bộ chuyển đổi tín hiệu Z-8AI chính là giải pháp hoàn hảo với 8 tín hiệu analog đầu vào. Tín hiệu ngõ ra dạng Modbus RTU cũng với sai số 0.1% và thơi gian đáp ứng nhỏ hơn 10ms.

Tất cả các tín hiệu sau khi được xử lý truyền qua chuẩn Modbus để truyền các dữ liệu này lên Internet chúng ta chỉ cần thêm một bộ Modbus Gateway Z-Key. Truyền tín hiệu từ Modbus RTU sang Internet qua cổng RJ45.

ứng dụng bộ chuyển đổi modbus RTU sang Modbus Internet TCP IP
Tất cả các tín hiệu Modbus RTU đươc truyền lên Internet thông qua Z-Key

Với một bộ gateway Z-key chúng ta có thể truyền thông về PLC và cả PC cùng một lúc . Hai thiết bị này làm Master cho các thiết bị Slave như Z-8AI .

Với cách truyền như vậy chúng ta sẽ kết nối được rất nhiều Modul Analog vào internet với chi phí cực thấp so với việc dùng Modul Analog kết nối với PLC hoặc DCS.

Modbus Z-Key
Ứng dụng của Modbus Z-Key

Ưu nhược điểm của việc sử dụng Modbus RTU

Ưu điểm của Modbus RTU

  • Tất cả các tín hiệu truyền trên 2 dây tín hiệu RS 485 với khoảng cách truyền xa 1200m
  • Giảm tối thiểu dây kết nối vào PLC
  • Tiết kiệm một lượng lớn Modul mở rộng PLC
  • Giảm không gian lắp đặt do bộ chuyển đổi có thiết kế mỏng nhỏ gọn so với Modul mở rộng của PLC
  • Độ ổn định và ít nhiễu so với tín hiệu analog 4-20mA
  • Các Modul độc lập nhau nên quản lý dể dàng
  • Có thể dùng chung các hãng khác nhau có chuẩn Modbus RTU

Nhược điểm của Modbus RTU

  • Tín hiệu không nhanh bằng việc dùng trực tiếp như analog hoặc Digital
  • Chỉ phù hợp cho điều khiển có thời gian đáp ứng 1s trở xuống
  • Cần PLC hay Scada có cấu hình mạnh đủ để đọc tất cả các thanh ghi khi dùng nhiều bộ chuyển đổi Modbus RTU

Cần tư vấn thêm về bộ chuyển đổi Modbus RTU hãy liên hệ với chúng tôi để được hướng dẩn cách chọn bộ chuyển đổi sang Modbus.

Thứ Tư, 11 tháng 8, 2021

Tìm hiểu về bộ đếm xung tốc độ cao HSC của PLC Dùng bộ đọc xung tốc độ cao HSC với encoder trên pl

 Trong mỗi loại plc thường được tích hợp bộ đếm xung tốc độ cao hsc, vậy chức năng và ứng dụng của nó dùng để làm gì ? Mời các bạn cùng tìm hiểu bài viết như sau.

Bộ đếm xung tốc độ cao HSC của PLC là gì ?

Trong thực tế khi sử dụng plc có một số ứng dụng bắt buộc chúng ta phải đọc một số loại xung ở tốc độ rất cao từ 10kHz hoặc lên tới vài trăm khz và tất nhiên trong plc không phải ngõ vào nào cũng có thể đọc được những loại xung tốc độ cao đó.

Đa số các loại plc thường chỉ tích hợp ngõ vào đọc xung tốc độ cao ở một số chân nhất định và thường được gọi tắt là hsc. Cụm từ HSC là viết tắt của từ high speed counter dịch sang tiếng Việt có nghĩa là bộ đếm xung tốc độ cao.

Khi tham khảo cấu hình của một plc thì ta cũng nên quan tâm xem plc tích hợp bao nhiêu bộ đếm xung tốc độ cao và tần số tối đa của những chân này là bao nhiêu để tránh trường hợp không đủ chân đếm xung tốc độ cao để sử dụng hoặc tần số đếm tối đa không đáp ứng được tốc độ xung cần đếm.

Ứng dụng của bộ đếm xung tốc độ cao HSC này thường dùng:

  • Đọc xung A/B từ encoder để tính tốc độ hay vị trí của động cơ 3 pha hay motor servo. Lưu ý bộ đếm xung tốc độ cao chỉ có thể đọc được encoder dạng tương đối incremental.
  • Đọc xung từ một số loại cảm biến hồi tiếp xung như cảm biến siêu âm hay laser, hồng ngoại.
  • Bộ đếm xung tốc độ cao còn có thể dùng để đọc xung từ cảm biến từ đo tần số của cảm biến.

Cách sử dụng bộ đếm xung HSC của PLC

Mỗi loại plc khác nhau thì sẽ có cách cài đặt và lập trình bộ hsc khác nhau. Các dạng sử dụng có bộ đếm xung tốc độ cao thường được tích hợp các tính năng giống như các tính năng của encoder.

Ví dụ như có các chế độ như đếm xung cạnh lên, đếm xung canh xuống, đếm xung 2 ngõ vào. Đối với các plc có khối hàm hsc thì có thể cài đặt giá trị out ra khi giá trị đếm đạt tới giá trị cài đặt.

Thường thì quy trình sử dụng bộ đếm xung tốc độ cao hsc trên plc thường sẽ có 2 bước:

  • Bước 1 cấu hình phần cứng và config ngõ vào input để nhận xung tốc độ cao.
  • Bước 2 sẽ là sử dụng câu lệnh hay hàm đếm xung để đọc giá trị xung về.

Đối với một số dòng plc còn tích hợp sẵn khối hàm đọc tốc độ hoặc tần số, các bạn có thể tham khảo thêm trong tài liệu manual của từng hãng plc.

Ngoài ra ta nên sử dụng linh hoạt bằng cách lập trình để dựa vào số xung đếm được để tính toán giá trị số xung trên thời gian để tính được tốc độ để dùng tính toán trong quá trình lập trình plc.

Cách kết nối PLC với encoder

Thường thì để kết nối plc thì bạn cần phải kiểm tra manual đấu dây của cả encoder và PLC. Đầu tiên thì đối với encoder có rất nhiều loại với điện áp khác nhau như 5V, 12-24v và dạng ngõ ra là điện áp, line drive, open colector, totempole( cực thu hở). Đối với loại 5v nếu muốn dùng plc đọc thì bạn cần phải mua mạch đệm điện áp từ 5v lên 24v thì mới kết nối được với plc.

Tìm hiểu về cách lập trình PLC đọc encoder
Tìm hiểu về cách lập trình PLC đọc encoder

Đối với encoder bạn phải kiểm tra xem encoder của bạn dùng loại ngõ ra điện áp hay cực thu hở để kết nối với plc cho thích hợp. Còn đối với plc bạn phải tra xem chân nào của plc được tích hợp khả năng đọc xung tốc độ cao thì hãy kết nối vào chân đó, ngoài ra các bạn còn tra thêm chế độ sink/source để kết nối encoder vào plc cho đúng nhé. Khi đấu nối giữa plc và encoder các bạn cần phải tham khảo thật kỹ tài liệu của plc và encoder bởi vì nếu đấu nối không đúng có thể gây cháy nổi cả hai thiết bị.

Để kiểm tra kết nối thành công hay chưa bạn có thể viết một chương trình đơn giản, sau đó dùng tay xoay nhẹ encoder xem trạng thái ngõ vào của plc có thay đổi trạng thái hay chưa ? Nếu vẫn chưa kết nối được thì bạn hãy cứ xem kỹ lại manual một lần nữa, nếu cứ đấu đúng theo tài liệu thì chắc chắn sẽ kết nối được.

Lập trình plc đọc encoder

Sau khi đã kết nối được plc với encoder bạn thường phải cài đặt chức năng chân để chân này là chân đọc xung tốc độ cao, ngoài ra các bạn cần cài đặt thêm chế độ đếm của bộ đếm xung như đếm lên hay đếm xuống, đếm từ hai chân xung, đếm cạnh lên hay cạnh xuống. Sau khi đã cài đặt bộ đếm xung được rồi thì bạn dùng một số hàm timer để tính toán ra tốc độ của encoder. Một lưu ý cho các bạn khi lập trình plc với encoder thì sau khi đọc được xung thì bạn nên xoay encoder khoảng 1 vòng để xem kết quả đọc về có đúng hay chưa nhé.

Các bạn nên lưu ý tùy mỗi loại plc thì việc sử dụng bộ đếm tốc độ cao( HSC) rất khác nhau. Chính vì vậy các bạn có thể tham khảo một số ví dụ trong tập lệnh( manual) của nhà sản xuất để cập nhật chi tiết. Nếu trong chương trình cần sử dụng nhiều bộ đếm thì bạn cần phải ưu tiên sử dụng bộ đếm tốc độ cao cho những loại xung có tốc độ lớn, còn những bộ counter thường thì nên dùng để đếm tín hiệu từ cảm biến từ, tiệm cận…

Đối với loại encoder có chân tín hiệu A-B thì các bạn phải dùng bộ đọc xung nhận tín hiệu từ hai kênh, đa số một số dòng plc như Siemens Mitsubishi Omron hay Delta đề có hỗ trợ. Khi sử dụng chế độ này thì khi bằng xoay chiều tới thì bộ đếm xung sẽ đếm lên, nếu xoay chiều phải thì bộ đếm xung sẽ đếm xuống.

Hỗ trợ lập trình plc đọc encoder

Để giúp các bạn lập trình plc đọc encoder một cách nhanh chóng hơn abientan có dịch vụ hỗ trợ trực tiếp đấu dây cũng như kết nối tới một số loại plc để giúp bạn sử dụng encoder trên plc một cách linh hoạt hơn. Các bạn vui lòng báo mã encoder và plc sử dụng để chúng tôi kiểm tra trước xem có thể hỗ trợ được hay không, nếu được chúng tôi sẽ báo giá cụ thể phí dịch vụ để các bạn cân nhắc.

Đối với trường hợp các bạn gặp khó khăn trong việc ứng dụng thực thế của việc đọc xung encoder chúng tôi sẽ tư vấn thêm một số giải pháp phổ biến để cho bạn có thể lập trình plc đọc encoder một cách thuận tiện hơn.

Chủ Nhật, 8 tháng 8, 2021

Điều khiển Servo SG90 với S7-200

 

  1. Nguyên tắc điều khiển Servo SG90

Các bạn thường dùng thư viện Arduino để điều khiển SG90 nên đôi khi mình không để ý đến nguyên lý, trước đây mình cũng vậy.

Nguyên tắc của nó rất dễ hiểu:

  • Tạo xung PWM với chu kỳ 20ms.
  • Góc của servo sẽ phụ thuộc vào thời gian xung cao: 0  o  - 180  o  sẽ tương ứng với 1ms - 2ms.
  • Ví dụ, 0  o  là 1ms, 90  o  là 1,5ms, 180  o  là 2ms, 45  o  là 1,25ms. Bạn chỉ cần tính toán tỷ lệ.

2. Sơ đồ đấu dây 

Xin lưu ý rằng chỉ loại DC / DC / DC mới có thể tạo ra xung và không thể điều khiển loại đầu ra Rơle. S7-200 cũng chỉ hỗ trợ 2 chân tạo xung là Q0.0 và Q0.1.

3. Lập trình

Đi tới Trình hướng dẫn> Chọn PTO / PWM.

Bạn chọn chân Q0.0 hoặc Q0.1 để tạo xung, ở đây mình dùng Q0.0.

Chọn loại xung PWM và đơn vị là micro giây.

Sau đó, vào Call Subroutines và gọi hàm PWM bạn vừa tạo và lập trình nó giống như tôi.

Ở đây Cycle là chu kỳ xung 20ms = 20000 micro giây. Xung là thời gian xung cao, ở đây mình gán cho biến VW10 để dễ điều chỉnh.

Tiếp theo chúng ta sẽ điều chỉnh góc cho servo. Mở trạng thái biểu đồ

Về nguyên tắc, ở đây mình sẽ đưa vào các giá trị 1000 - 2000 lần lượt là 0  o  - 180  o  , nhận xét sẽ thấy servo chạy ở một góc không chính xác, bạn tiếp tục thử với các giá trị khác để tìm ra 0  o  - 180  o  , kết quả tôi làm là 0  o  là 300, 90  o  là 1300, 180  o  là 2300.

Chúc may mắn.

Phát xung (PTO - PWM) trong PLC Siemens


Tóm tắt:
Sử dụng wizard sẽ làm cho người lập trình đỡ tốn công lập trình hơn (chủ yếu cài thông số cho phù hợp -> tạo ra hàm -> lôi ra sử dụng trong chương trình chính)

1. Chế độ PWM thì đơn giản, chỉ cần khai báo thông số chu kỳ và độ rộng xung
2. Chế độ PTO thì có nhiều thứ hơn (hay dùng điều khiển động cơ bước và servo), nói sơ ở phần cơ bản nha:
có các thông số sau:
- tốc độ max (mặc định là 100KHz)
- tốc độ min (mặc định là 5kHz)
- thời gian tăng tốc (mặc định 1s)
- thời gian giảm tốc (mặc định 1s)

trong chương trình chính có 2 cách sử dụng:
PTO_CTRL: chương trình luôn luôn thực hiện việc phát xung (nếu ko phát sinh lỗi hoặc có tác động stop của chương trình -> dừng khẩn cấp I-STOP hoặc dừng có giảm tốc D-STOP)
PTO_MAN: việc phát xung tùy thuộc vào điều kiện RUN của hàm

Chương trình tại đây!

I. GIỚI THIỆU:
    Trong PLC S7-200 có hổ trợ chúng ta phát xung tốc độ cao (tức là tạo một chuỗi xung ngỏ ra) tại 2 chân Q0.0 và Q0.1
    Ta dùng instruction PLS để thực hiện phát xung trên PLC S7-200. Chú ý rằng instruction này được chia ra 2 chức năng là phát xung PTO và điều rộng xung PWM
       - PTO (Pulse Train Output) là 1 chuỗi xung ngỏ ra với độ rộng xung ON là 50% của chu kì
       - PWM (Pulse Width Modulation) là 1 chuỗi xung ngỏ ra mà ta có thể thay đổi được độ rông xung ON
    Vậy ta thấy rằng PTO chẳng qua chỉ là 1 trường hợp đặc biệt của PWM mà thôi.
    Khi ta sử dụng chức năng phát xung tại các chân Q0.0 và Q0.1 thì các lệnh xử lý tại các chân này đều được bỏ qua và chú ý rằng trước khi sử dụng phát xung trên       2 chân này ta phải reset chúng về 0 trước





    Khi ta sử dụng cũng như thiết kế phát xung tốc độ cao trong PLC S7-200 sẽ có 1 vùng nhớ đặc biệt SM để điều khiển chúng gồm 1 thanh ghi 8 bit cho điều khiển, 1       thanh ghi 32 bit không dấu dành cho giá trị xung đếm, 1 thanh ghi không dấu 16 bit cho thời gian 1 chu kì và 1 thanh ghi 16 bit không dấu cho độ rộng xung

II. ĐIỀU RỘNG XUNG PWM TRONG PLC S7-200:
     Ta có thể chọn đơn vị thời gian cho cycle time (base time) của PWM là ms hoặc us bởi các bit điều khiển. giới hạn thời gian 1 chu kì cycle time như sau:
      - 50 µs to 65,535 µs (nếu đơn vị thời gian chọn là us)


      - 2 ms to 65,535 ms (nếu đơn vị thời gian chọn là ms)
    Trong 1 số trường hợp đặc biệt như độ rộng xung mà bằng 100% thời gian của 1 chu kì (cycle time) thì ngỏ ra sẽ output liên tục cũng như nếu độ rộng xung bằng         0% thời gian của 1 chu kì thì ngỏ ra sẽ OFF.
    Nếu trong chương trình độ rộng xung mà >= giá trị của cycle time thì PLC sẽ hiểu là độ rộng bằng 100% cycle time
    Nếu trong chương trình độ rộng xung mà =0 thì PLC sẽ hiểu là ngỏ ra OFF
    Nếu trong chương trình chọn cycle time < 2 lần đơn vị base time thì PLC sẽ hiểu là cycle time = 2 lần đơn vị base time


    Có 2 cách để thay đổi đặc tính sóng ngỏ ra trong PWM của PLC S7-200:
        - Synchronous Update: Siemens nói rằng nếu trong chương trình của chúng ta không cần thay đổi đơn vị thời gian time base thì chọn phương pháp điều rộng xung đồng bộ. Việc thay đổi đặc tính sóng ngỏ ra tại vùng biên của 1 chu kì khi mà đơn vị thời gian time base không thay đổi vẫn đảm bảo sóng ngỏ ra mịn và ổn định
        - Asynchronous Update: Trong 1 số trường hợp ta cần thay đổi đơn vị thời gian time base trong chương trình thì cần phải chọn phương pháp điều rộng xung bất đồng bộ. Trong chế độ này bộ phát xung của chúng ta sẽ ngừng hoạt động trong giây lát mỗi khi đặc tính sóng ngỏ ra thay đổi, chính vì vậy nên sóng ngỏ ra cũng sẽ không đồng bộ và điều này dẫn đến hiện tượng gọi là rung pha.
     *** Siemens khuyến cáo chúng ta nên chọn chế độ Synchronous Update trong PWM của PLC S7-200. Chọn chế độ này như thế nào sẽ được đề cập phần sau nhé




III. CÁC BIT CẤU HÌNH VÀ ĐIỂU KHIỂN TRONG PWM CỦA PLC S7-200:
     Trong bài hôm trước về phát xung PTO chúng ta đã tìm hiểu các bit điều khiển trong phát xung PTO, hôm nay ta chỉ tìm hiểu các bit điều khiển trong PWM mà thôi        nên những bit liên quan đên PTO ta sẽ không đề cập đến nữa





      - Byte điều khiển SMB66 và SMB76 chỉ dùng cho cấu hình PTO nên tham khảo bài PTO nhé
      - SM67.0 & SM77.0 : Nếu trong chương trình ta muốn thay đổi thời gian 1 chu kì cycle time thì hãy set bit này lên 1
      - SM67.1 & SM77.1 : Ta phải set bit này lên 1 để thay đổi độ rộng xung (thời gian của xung ON trong 1 chu kì được gọi là độ rộng xung)
      - SM67.2 & SM77.2 : Dùng cho cấu hình PTO 
      - SM67.3 & SM77.3 : Chọn đơn vị thời gian time base (nếu là 0 thì us và nếu chọn là 1 thì ms)
      - SM67.4 & SM77.4 : Chọn bằng 1 thì phương pháp PWM là đồng bộ (synchronous update) và chọn bằng 0 thì phương pháp PWM là bất đồng bộ (asynchronous)
      - SM67.5 & SM77.5 : Dùng cho cấu hình PTO 
      - SM67.6 & SM77.6 : Set bằng 1 để dùng chế độ điều rộng xung PWM trên chân Q0.0 hoặc Q0.1
      - SM67.7 & SM77.7 : Set bằng 1 để cho phép module phát xung hoạt động
      - SMW67 & SMW78: Thanh ghi 16 bit để load giá trị cycle time 
      - SMW70 & SMW80: Thanh ghi 16 bit để load giá trị độ rộng xung 
      - SMD72 &SMD82: Dùng cho cấu hình PTO
      - SMB166 & SMB176: Dùng cho cấu hình PTO
      - SMW168 & SMW 178 : Dùng cho cấu hình PTO
      Ta có thể tham khảo 1 số giá trị điều khiển mẫu thường sử dụng trong bảng sau:



     Ví dụ ta load giá trị 16#D1 (11010001) vào thanh ghi điều khiển SMB67 thì có nghĩa là ta chọn phát xung trên chân Q0.0 của PLC. Chế độ phát xung là PWM,                phương pháp PWM là đồng bộ synchronous (tức là không thay đổi base time trong chương trình), đơn vị thời gian time base là us, cho phép thay đổi thời gian 1 chu      kì cycle time và không cho phép thay đổi độ rộng xung.




IV. LẬP TRÌNH ĐIỀU RỘNG XUNG PWM TRONG PLC S7-200:
     Ta chỉ sử dụng 1 instruction PLS khi muốn phát xung PWM trong PLC S7-200. Nếu muốn phát xung trên chân Q0.0 thì thông số Q0.X =0 và chân Q0.1 thì chọn là 1
    



     Khuyến cáo: Ta nên sử dụng bit SM0.1 để gọi chương trình con và trong chương trình con ta sẽ cấu hình cho PWM, làm như vậy sẽ giảm được thời gian scan time      cho PLC giúp tối ưu hóa lập trình hơn.
     Sau đó trong chương trình con ta thực hiện các bước sau để cấu hình cho PWM:
        B1: load giá trị phù hợp vào thanh ghi điều khiển
        B2: load giá trị cycle time
        B3: load giá trị độ rộng xung 
        B4: thực hiện gọi instruction PLS để bắt đầu phát xung
        B5: nếu trong chương trình tiếp theo sau ta cần thay đổi các thông số như cycle time hay độ rộng xung thì ta load giá trị phù hợp vào thanh ghi điều khiển trước             khi thoát khỏi chương trình con

    Để thay đổi giá trị độ rộng xung cho PWM ta thực hiện gọi 1 chương trình con khác, trong chương trình con đó thực hiện các bước sau:
        B1: Nếu bước 5 ở trên đã được thực hiện thì ở đây ta chỉ cần load giá trị độ rộng xung mới
        B2: Thực hiện gọi instruction PLS để bắt đầu phát chuỗi xung mới
        B3: Nếu trong chương trình tiếp theo sau ta cần thay đổi các thông số như cycle time hay độ rộng xung thì ta load giá trị phù hợp vào thanh ghi điều khiển trước             khi thoát khỏi chương trình con.

V. VÍ DỤ CỤ THỂ:
     Như đã đề cập ở trên trước khi sử dụng phát xung ta phải reset chân phát xung và dùng bit SM0.1 để gọi chương trình con khởi tạo PWM. Vậy trong chương trình        chính ta có Network 1 là reset chân Q0.1 và gọi chương trình con SBR_0. 
     Trong network 2 dùng xung cạnh lên của bit điều khiển M0.0 để gọi chương trình con SBR_1


      Trong chương trình con SBR_0 thực hiện các lệnh sau:
         - Load giá trị DB(11011011) vào thanh ghi điều khiển SMB77 (Ở đây ta dùng chân Q0.1 để phát xung nên dùng thanh ghi SMB77 nhé)
              + chọn chế độ phát xung PWM
              + chọn đơn vị thời gian base time là ms
              + chọn phương pháp PWM là đồng bộ (synchronous update)
              + cho phép thay đổi độ rộng xung cũng như cycle time trong chương trình
      Load giá trị 10.000 vào thanh ghi SMW78 để chọn thời gian của 1 chu kì là 10s
      Load giá trị 1.000 vào thanh ghi SMW80 để chọn độ rộng xung là 1s
      Gọi instruction PLS để bắt đầu phát xung trên chân Q0.1
      Vì trong chương trình ta giả sử cần thay đổi độ rộng xung trong chuỗi xung tiếp theo nên ta phải load giá trị phù hợp vào thanh ghi điều khiển SMB77 trước khi               thoát khỏi chương trình con SBR_0 (Ở đây ta load giá trị là DA (11011010) tức là chỉ muốn thay đổi độ rộng xung chứ không thay đổi cycle time)


     Vậy sau khi PLC thực thi xong chương trình con SBR_0 thì xung ngỏ ra tại chân Q0.1 sẽ xuất hiện với độ rộng xung là 1s trên tổng chu kì 10s. Xung cứ phát ra như thế cho đến khi bit điều khiển M0.0 set lên 1 thì PLC thực hiện lệnh gọi chương trình con SBR_1
    Trong chương trình con SBR_1 thực hiện thay đổi độ rộng xung như sau:
    Load giá trị 5000 vào thanh ghi SMW80 để thay đổi độ rộng xung là 5s
    Gọi instruction PLS để thực hiện áp dụng thay đổi. Nếu không muốn thay đổi đặc tính sóng ngỏ ra nữa thì ta không cần phải load giá trị vào thanh ghi điều khiển nữa


   Vậy cuối cùng thực hiện xong chương trình con SBR_0 thì chân Q0.1 sẽ phát xung với độ rộng xung là 5s trên tổng chu kì là 10s. Và xung cứ phát ra như thế tiên tục

   Cụ thể hình sau cho ta dạng sóng ngỏ ra theo thời gian của chân Q0.1 với đoạn code trên