bài tập lớn môn thiết kế hệ điều khiển nhúng, thiết kế chi tiết phần cứng và phần mềm bộ điều khiển áp suất bình cao áp sử dụng vi điều khiển PIC. Bộ điều khiển có tích hợp các loại đầu ra và đầu vào dạng AI, DI, giao tiếp RS485, giao diện người dùng. Tài liệu bao gồm cách thiết kế, sơ đồ thiết kế, tính toán chi tiết
Trang 1` ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN-ĐIỆN TỬ
Trang 2PHẦN I: MÔ TẢ SẢN PHẨM
1 Mô tả tổng quan sản phẩm
Sản phẩm là thiết bị điều khiển các quá trình áp suất cao và có độ chính xáccao ví dụ trong: cánh tay cơ khí gắp vật, bình cao áp Thiết bị có khả năng tươngthích với nhiều loại cảm biến áp suất thông dụng và các loại van áp suất; có thểđiều khiển với các chế độ khác nhau
2 Tính năng kỹ thuật của sản phẩm
o Hiển thị giá trị đo
o Hiển thị thực đơn và chế độ làm việc
4 nút nhấn: RESET, MENU/OK, lên, xuống 1 công tắc nguồn
Nguồn cấp công nghiệp 24VDC
Bảo vệ điện áp thấp, bảo vệ điện áp cao, bảo vệ ESD
Tính năng điều khiển trong dải -1…200 bar [-15…3000 psi], tốc độđiều chỉnh <4s cho 25% FS, độ chính xác 0.02% FS
3 Tính năng sử dụng
Điều khiển quá độ bằng bộ điều khiển PID
Điều khiển ON/OFF
Bật ON/OFF qua công tắc nguồn
Cho phép cài đặt setpoint và tham số điều khiển từ cấp điều khiển caohơn qua truyền thông MODBUS
4 Mô tả chức năng các khối chính
Trang 3 AI: đầu vào cho phép nhận tín hiệu dạng tương tự từ các cảm biến,thường dưới dạng điện áp hoặc dạng dòng.
DI: đầu vào cho phép nhận tín hiệu dạng số/logic từ cảm biến, nútnhấn,…
AO: đầu ra cho phép phát ra tín hiệu dạng tương tự điều khiển cácloại van điều chỉnh được % độ mở
DO: đầu ra cho phép phát ra tín hiệu số/logic điều khiển các loại vanđóng/mở, van an toàn,…
Nút bấm: cho phép người dùng tương tác với thiết bị theo ý muốn
Màn hình: Hiển thị trực quan giá trị đo áp suất của đối tượng, chế độlàm việc của thiết bị
Truyền thông (RS485): Cho phép thiết bị giao tiếp với các thiết bịkhác và hệ thống điều khiển cấp trên
PHẦN II: THIẾT KẾ SƠ BỘ
Trang 4Mô tả yêu cầu kỹ thuật và giải pháp cho các thành phần chínhThành phần chính Yêu cầu kỹ thuật Giải pháp
Analog Input (AI)
Dạng điện áp 0-10V
Dạng dòng 4-20 mA
+ Tín hiệu vào: 0-10V (dạng điện áp) hoặc 4-20
mA (dạng dòng điện)+ Có cách ly vi điều khiển
+ Có bộ lọc nhiễu tín hiệu
+ Có bảo vệ điện áp đầu vào, bảo vệ ESD
+ Sử dụng IC ADC để chuyển tínhiệu tương tự thành tín hiệu số+ Sử dụng 2 diode để bảo vệ điện
áp thấp và cao
+ Sử dụng diode TVS để bảo vệESD
+ Sử dụng điện trở-biến trở kếthợp Op-amp để chuyển đổi tínhiệu dạng dòng về tín hiệu dạngđiện áp
Digital Input (DI) + Cho phép đầu vào mức
logic cao ở dải rộng 36V
10-+ Có bảo vệ điện áp mứccao và mức thấp đầu vào,bảo vệ tĩnh điện ESD
+ Có đèn Led báo trạngthái
+ Cách ly với vi điềukhiển
+ Bảo vệ điện áp đầu vào bằngDiode TVS
+ Sử dụng mạch phân áp và mạchTrigger Schmitt sử dụng Op-amp
để cố dịnh đầu vào đảm bảo yêucầu về mức logic
+ Sử dụng Opto-coupler để cách
ly đầu vào số với vi điều khiển
Analog Output (AO)
Dạng điện áp 0-10V
Dạng dòng 4-20 mA
+ Điện áp ra: 0-10V,dòng điện ra: 4-20mA+ Có cách ly vi điềukhiển
+ Có bộ lọc nhiễu tínhiệu
+ Có bảo vệ điện áp đầuvào, bảo vệ ESD
+ Sử dụng IC DAC chuyển đổi tínhiệu số thành tín hiệu tương tự.+ Sử dụng 2 diode để bảo vệ quá
áp và thấp áp+ Sử dụng diode TVS để bảo vệESD
+ Cách ly với vi điều khiển dùngopto-coupler
+ Sử dụng op-amp để chuyển đầu
ra áp thành dòng điện (với đầu radòng)
Digital Ouput (DO) + Có cách ly vi điều
khiển+ Cấp nguồn phát 24 V + Có bảo vệ điện áp cao,
Sử dụng Solid-state relay cho hiệuquả cách li với vi điều khiển.Dùng diode TVS bảo vệ ESD vàcặp diode bảo vệ điện áp quá cao
Trang 5thấp, bảo vệ ESD và quá thấpTruyền thông RS485 + Có cách ly vi điều
khiển
+ Có bảo vệ điện áp cao,thấp, bảo vệ ESD
+ Sử dụng IC tích hợp chuyển đổitín hiệu từ vi điều khiển thànhchuẩn MODBUS truyền quaRS485
Nút nhấn + Tín hiệu phím bấm 5V
+ Có khả năng chốngnhiễu phím khi bấm
+ Sử dụng IC Trigger Schmith cóđảo và tụ điện để chống nhiễuphím
+ 4 chân truyền thôngRS485 (2 chân đọc/viết,
2 chân điều khiển)
Chọn VĐK PIC24FJ128GA106
có 100 chân (46 chân có thểremap)
+ Hỗ trợ I2C, UART, SPI
Khối nguồn Cần cấp nguồn cho
các tải sau:
+ Vi điều khiển và một
số IC khác có cách li (3.3V)
+ Các IC còn lại amp) (±5V)
(op-+ Nguồn cấp cho đầu ra
DO Relay 24V+ Nguồn 12V giới hạn ápđầu vào và nguồn 10Vgiới hạn áp đầu ra
Sử dụng IC chuyên dụng chonguồn cấp ổn định bất kể điện ápđặt vào như LM7810, L78L33.Dùng IC cách li nguồn nhưREM1,…
Trang 6 Điện áp đầu vào 2.7-32V
Dòng đầu vào ±10mA
+ Cách ly với vi điều khiển bằng Opto-coupler PC-817
Tính toán chi tiết cổng DI1
Mạch phân áp
Tín hiệu mong muốn ngõ vào chân (-) của Op-amp ở giới hạn từ 32V, ta chọn mức điện áp 5V làm tín hiệu ngưỡng cao, 0.5V làm tínhiêu ngưỡng thấp của Trigger Schmitt
3-Tín hiệu đầu vào tối thiểu 10V đạt ngưỡng cao nên thiết kế mạch phân
áp để đầu vào 10V cho đầu ra 5V
Trang 7 Mạch báo hiệu sử dụng diode quang (LED)
Dùng LED đỏ chịu được điện áp ngược 5V, có dòng tối đa 20mA nênđiện trở R6 tối thiểu
Trang 8R116=V high
I rLED= 5
20=0.25(kW )
Chọn R116 = 300 W
Mạch cách ly với vi điều khiển
Dòng tối đa đầu vào với Opto-coupler PC817 là 50 mA nên điện trở
Trang 92.1 Thiết kế cổng vào tương tự AI
Trang 11Chọn C401=C402=0.1 uF, R40=100W, zener diode MMBZ5222 chịu
áp ngược 2.5V như datasheet của IC DS3911
b Đầu ra 0-10V
Thành phần chính:
+ Mạch lọc nhiễu có các thông số điện trở và điện dung nhưkhuyến nghị từ datasheet của IC DAC
+ Op-amp LM321 khuếch đại tín hiệu 3.3V lên 10V
+ Mạch bảo vệ gồm diode TVS 1SMB10CAT bảo vệ ESD vàcặp diode 1N4148 bảo vệ quá áp và thấp áp
Tính toán chi tiết:
Trang 12c Đầu ra 4-20mA
Thành phần chính:
+ Mạch lọc thông thấp giống phần đầu ra 0-10V+ Mạch chuyển điện áp sang dòng điện sử dụng op-amp LM741 + Diode TVS 1SMB10CAT bảo vệ ESD
Tính toán chi tiết
Trang 13 Các thành phần chính một mạch nút nhấn
+ Nút nhấn nhả nối với nguồn 5V
+ Trigger Schmitt IC 74HC14 chống nhiễu phím, có tốc độ chuyểnmạch nhanh, chỉ phụ thuộc điện áp; cùng với đó mắc thêm cả ở đầuvào và đầu ra tụ điện
+ Cách li và chuyển đổi điện áp với vi điều khiển sử dụng coupler PC847 gồm 4 port
opto- Tính toán chi tiết với button B1
Dựa vào yêu cầu đầu vào với IC 74HC14, giới hạn dòng điện vào ICkhông vượt quá 20mA nên điện trở tối thiểu là
Trang 14+ Chân RW nối đất tức RW=0, chế độ ghi.
+ Chân VSS nối đất, VDD nối nguồn 5V, VEE nối một biến trở 5V cho phép thay đổi chế độ hiển thị màn hình
0-Kết nối các chân RS, E, DBx (x=0,1,2,3,4,5,6,7) với các chân của viđiều khiển cách li bởi IC PC817 như sơ đồ dưới
Trang 154 Thiết kế phần cứng giao diện truyền thông
Trang 16+ Dùng IC REM1-3.33.3S để cách li nguồn với vi điều khiển
Tính toán chi tiết:
Các tụ lọc trước và sau 2 IC tạo nguồn chọn như đề xuất trongdatasheet
Các thông số C87, C88, L81 chọn như datasheets
Dòng tiêu thụ ở cấp điện áp 3.3V gồm 8 chân DI, 1 chân SCL,
1 chân SDA, 4 chân nguồn, và một chân Reset, mỗi chân tiêuthụ 18mA suy ra tổng dòng tiêu thụ là 270mA Trong khi đó ICREM1 cung cấp đến 303mA nên thỏa mãn nhu cầu của mạch
Trang 18Kết nối cơ bản của vi điều khiển:
Mạch Reset nối với chân MCLR của vi điều khiển được điều khiển bởicông tắc B0, kết nối với nguồn qua hai điện trở R01=10kW và R02=300 W
và nối GND qua tụ 0.1 uF như datasheet
3 cặp chân VSS , VDD và cặp chân AVSS, AVDD nối với tụ tách 0.1 uF
Chân ENVREG nối đất vì không sử dụng tính năng phát nguồn từ vi điềukhiển Và vì thế chân VCAP/VDDCORE không kết nối
Kết nối bus I2C:
Trang 19 Chọn 2 chân RG2, RG3 của vi điều khiển tương ứng là SCL1 và SDA1làm hai dây kết nối của I2C
Nối hai dây lên Vdd=3.3V qua điện trở 12k
Kết nối parallel với LCD
Nối chân E (Enable) của LCD với chân RD11 hay PMCS1 của vi điềukhiển
Nối chân RS với chân RC13
Nối các chân data của LCD là DBx tương ứng với các chân REx (PMDx)của vi điều khiển x=0,1,2,3,4,5,6,7
Kết nối các chân digital:
Các chân DO nối với các chân RDx x= 0,1,2,3,4,5,6,7
Các chân DI nối với các chân RFx, RD8,RD9 x=0,1,2,3,4,5,6
7 Thiết kế tổng thể thiết bị
Thiết kế mạch nguyên lí toàn bộ các thành phần của bộ điều khiển áp suấtđược thể hiện trong file đính kèm
PHẦN IV: THIẾT KẾ PHẦN MỀM
Trang 201 Thiết lập chế độ điều khiển
Chương trình con nhận tín hiệu các nút bấm trả về chuỗi số biểu thị thuật toánđiều khiển cùng với đối số cần thực hiện khi thiết bị hoạt động:
runVar = ControlSetup()trong đó runVar là biến 12 bit biểu diễn thuật toán cần chạy, các biến Mode1,Mode2 biểu thị thuật toán cần chạy, biến In biểu diễn đầu vào, Out, biểu diễn đầu
ra, MP biểu diễn hệ số thuật toán (hệ số PID với thuật toán PID, hệ số đảo vớithuật toán điều khiển ON/OFF), SP biểu thị Setpoint (ở thuật toán ON/OFF đầuvào logic thì SP không xác định)
Khi chạy chương trình điều khiển ta sẽ chạy tuần tự các chương trình conRun(runVar)
Trang 222 Hiển thị khi Idle
trong đó ACheck là bit chỉ trạng thái kết nối của cổng analog input được kiểmtra, ACheck=1 tức cổng có kết nối, Acheck=0 tức cổng để trống
x=1,2,3,4 là số thứ tự cổng analog input
Trang 233 Thuật toán điều khiển
3.1 Điều khiển PID
Thuật toán PID ở chế độ offline, tức là không cần kết nối với thiết bị điềukhiển cấp trên thực thi bởi chương trình con PIDOffline(Var)
Trang 24trong đó sc là hệ số an toàn, nếu giá trị Output tính được lớn hơn hoặc bằng (sc.SP) thì chương trình sẽ kết thúc; eps là sai số điều chỉnh cho
phép của đối tượng
3.2 Analog input ON/OFF mode
3.3 Logic input ON/OFF mode
+ MP: bằng 1 nếu chọn ởmục Pval? là P (Positive) vàbằng -1 nếu chọn N(Negative)
+ SP: giá trị mức giới hạn ápsuất (cao hoặc thấp) dongười dùng đặt
MP bằng 1 nếu chọn P vàbằng 0 nếu chọn N
Trang 254 Chế độ online
Trong chế độ Idle, thiết bị sẽ gửi các thông tin giá trị các cổng analog và trạng thái các cổng logic khi có yêu cầu từ thiết bị điều khiển cấp cao nối với nó qua truyền thông RS485
Khi trong chế độ PID online, thiết bị sẽ cho phép thiết bị cấp cao kết nối với nó
có các quyền sau:
Lựa chọn AI, AO
Nhận liên tục tín hiệu từ AI đã chọn
Gửi tín hiệu liên tục đến AO đã chọn
Cập nhật thông số PID tạm thời và có thể lưu thông số vào một trong bốn biến nhớ có sẵn
Thiết lập setpoint SP lưu vào một trong bốn biến nhớ có sẵn
Thiết lập hệ số an toàn sc và sai số điều chỉnh cho phép eps
Kết thúc chế độ online bằng nhấn OK tại thiết bị hoặc gửi tín hiệu kết thúc từ thiết bị cấp cao hơn