Tải bản đầy đủ (.docx) (36 trang)

hệ thống điều khiển nhiệt độ (PID)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.34 MB, 36 trang )

BÁO CÁO
MẠNG TRUYỀN THÔNG CÔNG NGHIỆP
ĐỀ TÀI:ĐIỀU KHIỂN NHIỆT ĐỘ

GVHD:Vũ Thăng Long
SVTT:Trần Chí Hiếu
Nguyễn Ngọc Tuấn
Nguyễn Văn Thiệu
Nguyễn Minh Tâm
Chế Minh Đức
Nguyễn Đức Hùng

1


MỤC LỤC
CHƯƠNG I.LỜI MỞ ĐẦU….…………………………Trang
3
CHƯƠNG II.CƠ KHÍ………….………………………Trang 5
2.1.Linh Kiện Sản Phẩm………..………………………Trang
5
2.2.Cấu tạo và chức năng………..……………………...Trang
5
2.3.Sơ đồ đi dây…………...………………………..…..Trang
12
2.4.Gải thích sơ đồ …..…..…………………………….Trang
13
CHƯƠNG III.VISUA STUDIO..……...……………...Trang 16
III.1.Giao Diện ViSua..……………..…………………Trang 15
III.2.Thiết Lập ViSua…………..…………………...…Trang
15


III.3.Code ViSua……..……………………………..…Trang 18
CHƯƠNG IV.CODE Adrunio Điều Khiển Nhiệt Độ..Trang
24
Chương V.Khác Nhau Giữa RS232 và RS485……....Trang 34

2


Lời Mở Đầu
Mạng truyền thông công nghiệp hay mạng công nghiệp (MCN)
là một khái niệm chung chỉ các hệ thống mạng truyền thông số,
truyền bit nối tiếp, được sử dụng để ghép nối các thiết bị công
nghiệp. Các hệ thống truyền thông công nghiệp phổ biến hiện
nay cho phép liên kết mạng ở nhiều mức khác nhau, từ các cảm
biến, cơ cấu chấp hành dưới cấp trường cho đến các máy tính
điều khiển, thiết bị quan sát, máy tính điều khiển giám sát và các
máy tính cấp điều hành xí nghiệp, quản lý công ty. Về cơ sở kỹ
thuật, mạng công nghiệp và các hệ thống mạng viễn thông có rất
nhiều điểm tương đồng, tuy nhiên cũng có những điểm khác biệt
sau: • Mạng viễn thông có phạm vi địa lý và số lượng thành viên
tham gia lớn hơn rất nhiều, nên các yêu cầu kỹ thuật (cấu trúc
3


mạng, tốc độ truyền thông, tính năng thời gian thực,...) rất khác,
cũng như các phương pháp truyền thông (truyền tải dải rộng/dải
cơ sở, điều biến, dồn kênh, chuyển mạch,...) thường phức tạp
hơn nhiều so với mạng công nghiệp. • Đối tượng của mạng viễn
thông bao gồm cả con người và thiết bị kỹ thuật, trong đó con
người đóng vai trò chủ yếu. Vì vậy các dạng thông tin cần trao

đổi bao gồm cả tiếng nói, hình ảnh, văn bản và dữ liệu. Đối
tượng của mạng công nghiệp thuần túy là các thiết bị công
nghiệp, nên dạng thông tin được quan tâm duy nhất là dữ liệu.
Các kỹ thuật và công nghệ được dùng trong mạng viễn thông rất
phong phú, trong khi kỹ thuật truyền dữ liệu theo chế độ bit nối
tiếp là đặc trưng của mạng công nghiệp.

4


II.CƠ KHÍ
I.1. Linh Kiện Sản Phẩm
+Modune RS485
+USB RS485
+LM35
+Đèn 12VDC
+Adrunio
+Quạt tản nhiệt 12VDC
+Dây cắm
5


+Test borad
+Nguồn tổ ong
+Modune LN298N

2.2.Cấu tạo và Chức Năng
Modune RS485

6



Module giao tiếp TTL to RS485 giúp cho việc truyền dữ liệu đi
xa đến 1KM, tốc độ truyền lên đến 20Mbps, và có thể sử dụng
trong môi trường đó nhiễu cao, trong môi trường công nghiệp.
Trong một mạng RS485 ở tại mọi thòi gian chỉ có 1 thiết bị
truyền được, và tất cả module còn lại sẽ chỉ có thể nhận được dữ
liệu.Module RS485 sử dụng điện áp là 5V, có thể kết nối nhiều
module trong cùng 1 đường truyền, kích thước board là 44 (mm)
x14 (mm).
+USB RS485

7


Mạch chuyển đổi giao tiếp USB sang RS485 sử dụng chip giao
tiếp CH340 hỗ trợ Win7 64 bit.
Dải tốc độ Baud: 75Bps - 115200Bps.
Chuẩn giao tiếp USB 2.0
Cấp nguồn trực tiếp từ cổng USB mà không cần nguồn ngoài.
Module nhỏ gọn như usb dễ dàng mang theo.
Khoảng cách giao tiếp lên đến 1200m.
Kích thước: 6.1 x 1.6 x 1.3 cm
+LM35

8


LM35 gồm 3 chân :
Chân số 1:VCC

Chân số 2:OUTPUT
Chân số 3:GND
LM35 là một cảm biến nhiệt độ analog
Nhiệt độ được xác định bằng cách đo hiệu điện thế ngõ ra của
LM35.
→ Đơn vị nhiệt độ: °C.
→ Nhiệt độ thay đổi tuyến tính: 10mV/°C
LM35 không cần phải canh chỉnh nhiệt độ khi sử dụng.
Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài
khoảng -55°C tới 150°C
9


LM35 có hiệu năng cao, công suất tiêu thụ là 60uA
Cảm biến LM35 hoạt động bằng cách cho ra một giá trị hiệu
điện thế nhất định tại chân Vout (chân giữa) ứng với mỗi mức
nhiệt độ.
+Đèn 12VDC

+LN298N

10


Module L298 có thể điều khiển 2 động cơ DC hoặc 1 động cơ
bước, có 4 lỗ nằm ở 4 góc thuận tiện cho người sử dụng cố định
vị trí của module.
+ Có gắn tản nhiệt chống nóng cho IC, giúp IC có thể điều khiển
với dòng đỉnh đạt 2A.
IC L298N được gắn với các đi ốt trên board giúp bảo vệ vi xử

lý chống lại các dòng điện cảm ứng từ việc khởi động/ tắt động
cơ.

Thông số kĩ thuật :
11










Driver: L298N tích hợp hai mạch cầu H
Điện áp điều khiển : +5V ~ +12 V
Dòng tối đa cho mỗi cầu H là :2A
Điện áp của tín hiệu điều khiển : +5 V ~ +7 V
Dòng của tín hiệu điều khiển : 0 ~ 36Ma
Công suất hao phí : 20W (khi nhiệt độ T = 75 °C)
Nhiệt độ bảo quản : -25°C ~ +130
Quạt tản nhiệt12V DC

Giới thiệu quạt tản nhiệt 12v 0.20A 9x9x2.5cm
- Điện áp hoạt động 12VDC.
- Dòng: 0.20A.
- Kích thước: 9x9x2.5cm.
- Dây kết nối nguồn: đỏ nối với dương, đen nối với âm.
Ứng dụng quạt tản nhiệt 12v 0.20A 9x9x2.5cm

- Dùng chế quạt tản nhiệt cho laptop.
- Chế quạt hút khói khi hàn.
12


- Chế máy hút bụi.
- Làm quạt thổi mát.
+Nguồn tổ ong

Tính năng:
Sử dụng cho các mạch công suất
- Biến đổi nguồn điện xoay chiều AC thành nguồn điện một
chiều DC
- Thường thì sử dụng cho hệ thống tủ điều khiển tự động, trong
các mạch led hoặc hệ thống camera, ...
Thông số kĩ thuật:
- Điện Áp Vào: AC 110-220V
- Điện Áp Ra: DC 12V
- Dòng Out Max: 5A
- Kích thước: 160x98x43MM
Testboard

13


Test Board cắm MB-102 Mini được sử dụng để gắn các module
hoặc linh kiện điện tử, kết nối chúng với nhau bằng các loại dây
cắm, dây nối test board giúp test, kiểm tra tính năng 1 cách dễ
dàng trước khi tạo thành các thành phẩm hoàn chỉnh.
Test Board cắm MB-102 Mini là loại kích thước chuẩn quốc tế,

chất lượng và độ bền cao, có thể sử dụng với 1 số module cấp
nguồn được thiết kế chuyên biệt.
Thông số kỹ thuật:
 Chất liệu: Nhựa, mối tiếp xúc bằng đồng mạ.
 Số điểm trên test board: 400 điểm.
 Kích thước: 85 x 55 x 10 mm

2.2.Sơ đồ đi dây
2.3.Giải thích sơ đồ

14


Từ nguồn điện 220v  cấp vào nguồn tổ ong lấy ra 12V
DC cấp nguồn vào mạch cầu H là 12v DC vào 2 chân là
chân 12V và GND.
Tiếp tục lấy 2 chân của bóng đèn cấp vào OUTPUTA và
2 chân của quạt tản nhiệt vào OUTPUTB.Sau đó sử dụng
1 test board 1 adrunio 1 usb rs485 và modun rs485.

15


+2 chân modun A và B của modun RS485 gắm vào 2
chân A và B của USB RS485.
RO của modun rs485 gắm vào chân RX của adrunio.
DI của modun rs485 gắm vào chân TX của adrunio.
2 chân còn lại của rs485 gắm vào chân số 2 của adrunio.
Lấy nguồn 5v và GND của adrunio ra chân dương và âm
trên test board để cấp nguồn cho lm35 và 1 chân tín hiệu

của LM35 vào chân AO của adrunio
Sau đó dùng 2 chân INPUT 1 và Input 4 của LN298 gắm
vào 2 chân số 6 và 9 để băm xung điều khiển đèn và quạt.

Chương III.Visua Studio
III.1.Giao Diện Visua
16


III.2.Thiết Lập Visua

17


NewProjectWindows froms ApplicationBrowse(Thư
mục lưu )OK vào được khung làm việc chính của visua.

B1.Bắt đầu thiêt lập giao diện điều khiển
18


ToolboxLable(Mạng Truyên Thông…) Text[ sửa tên]

B2:ToolboxButton(Nut Nhan)Text[ sửa tên]
+Muốn thay đổi màu hoặc phông chữ vào FontMicros...
B3:ToolboxTextbox(ô hiển thị…)Text [sửa tên]
B4.ToolboxChart( lấy đồ thị)Text.
B5.ToolboxTimer(Đồng hồ)Text

19



Giao diện chính dùng để điều khiển nhiệt độ.

III.3 Code visua
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace mttdieukhiennhietdovatocdo
{
20


public partial class nhietdo : Form
{
public nhietdo()
{
InitializeComponent();
}
String nhan, gui = "@XYNt#";
private void serTT_DataReceived(object sender,
System.IO.Ports.SerialDataReceivedEventArgs e)
{
nhan = serTT.ReadExisting();

tnhant.Invoke((Action)(() => tnhant.Text = nhan));
}

private void nhietdo_Load(object sender, EventArgs e)
{
serTT.PortName = "COM7";
serTT.Parity = System.IO.Ports.Parity.None;
serTT.StopBits = System.IO.Ports.StopBits.One;
tguit.Enabled = false;
chart1.Enabled = false;
serTT.Close();
chart1.ChartAreas[0].AxisX.Minimum = 0;
chart1.ChartAreas[0].AxisX.Interval = 1;
chart1.ChartAreas[0].AxisX.Maximum = 20;
chart1.ChartAreas[0].AxisY.Minimum = 0;
21


chart1.ChartAreas[0].AxisY.Maximum = 100;
}
private void tdothit_Tick(object sender, EventArgs e)
{
if(nhan!="error")
{
chart1.Series["nhietdo"].Points.AddY(nhan);
}
}
private void txoat_Tick(object sender, EventArgs e)
{
chart1.Series["nhietdo"].Points.Clear();

}

private void bketnoi_Click(object sender, EventArgs e)
{
serTT.Open();
tguit.Enabled = true;
chart1.Enabled = true;
}

private void bexit_Click(object sender, EventArgs e)
{
tguit.Enabled = false;
serTT.Close();
22


Close();
}
private void bdung_Click(object sender, EventArgs e)
{
tguit.Enabled = false;
serTT.Close();
}
String ctruyen,FCS;
private void timer1_Tick(object sender, EventArgs e)
{
loi f4 = new loi();
f4.ShowDialog();
}
private void tnhant_TextChanged(object sender, EventArgs e)

{
if (tnhant.Text == "error")
{
timer1.Enabled = true;
}
else
{
timer1.Enabled = false;
}
}
private void btruyent_Click(object sender, EventArgs e)
23


{
FCS = "T" + txtT.Text + "P" + txtKP.Text + "I" + txtKI.Text + "D" +
txtKD.Text;
ctruyen = "@XYNT" + txtT.Text + "P" + txtKP.Text + "I" + txtKI.Text +
"D" + txtKD.Text + "F" + FCS + "#";
serTT.Write(ctruyen);
}
private void tguit_Tick(object sender, EventArgs e)
{
tdothit.Enabled = true;
txoat.Enabled = true;
serTT.Write(gui);
}
}
}


Chương IV. CODE Adrunio Điều Khiển Nhiệt Độ
//--------------------------------- doc LM 35
float nhietdo,ndtb=0.0,ndt=0.0;
float chanlaynhiet=A0;
//----------------------------------du lieu nhan tu c#
24


float tmm;
float kp,ki,kd;
//--------------------------------- PID nhiet do
float p,i,d,pwm,pwm_old;
float e,sum_e,old_e;
float pwm2,pwm_old2;
//-------------------------------- ham serial event
String inputString = "";
boolean stringComplete = false;
//-------------------------------- ham lay ki tu
String batdau;
String ketthuc;
String diachigui;
String diachinhan;
String dulieuT;
String dulieuP;
String dulieuI;
String dulieuD;
String dulieuN;
String dulieuFCS;
String lenhN;
String lenhT;

String lenhP;
25


×