SlideShare a Scribd company logo
1 of 68
Download to read offline
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
1
TRƯỜNG ĐẠI HỌC NHA TRANG
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN TỐT NGHIỆP
Đề tài:
Điều khiển nhiệt độ trong lò ấp trứng
ứng dụng logic mờ.
GVHD : Bùi Đức Dương.
SVTH : Bùi Quang Vinh.
MSSV : 46133133.
Lớp : 46th
2.
Nha Trang, tháng 8 năm 2008.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
2
Lời nói đầu:
Ngày nay cùng với sự phát triển không ngừng của khoa học công nghệ, công
nghệ thông tin (CNTT) cũng đã có những bước tiến nhanh đến kinh ngạc và ngày
càng trở nên phổ biến rộng rãi trong cuộc sống thường ngày. Một trong số những
lĩnh vực quan trọng mà CNTT đóng vai trò then chốt đó là lĩnh vực điều khiển mờ.
Trong khoảng 20 năm nay, lý thuyết tập mờ đã ra đời và phát triển rất nhanh
chóng và đã đặt nền tảng cho một logic toán học mới: logic mờ (fuzzy logic). Logic
mờ tỏ ra rất phù hợp với những bài toán nảy sinh từ các hệ thống phức tạp trong
thực tế đặc biệt là những suy luận giống như cách mà con người vẫn thường sử
dụng.
Đồ án này đã vận dụng logic mờ trong điều khiển nhiệt độ của lò ấp trứng gà.
Dựa vào những tri thức cung cấp bởi những tài liệu chuyên ngành chăn nuôi và kinh
nghiệm thực tế của những hộ chăn nuôi gà_tri thức chuyên gia_em đã xây dựng nên
tập luật sử dụng trong hệ thống. Với sự trợ giúp của phần cứng_phần điện tử_em đã
mô phỏng một cách cụ thể nguyên lý cũng như hoạt động thực tế của một bộ điều
khiển mờ.
Cuối cùng em xin chân thành cảm ơn thầy Bùi Đức Dương đã giúp đỡ em thực
hiện đề tài này!
Do nhiều hạn chế, nhất là về thời gian và kinh phí nên đồ án còn nhiều khiếm
khuyết. Rất mong được sự góp ý của thầy cô để em có thể hoàn thiện hơn nữa đề
tài này.
Sinh viên thực hiện:
Bùi Quang Vinh
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
3
Mục lục:
Lời nói đầu .......................................................................................................2
Mục lục .............................................................................................................3
Phần 1 : Tổng quan về logic mờ và điều khiển mờ…...………………........4
I.1 Tổng quan về logic mờ….................………………………………........4
I.1.1 Tập mờ………......….......……………………………….....................4
I.1.2 Logic mờ ............. ................................................................................4
I.2 Tổng quan về điều khiển mờ..................................................................5
I.2.1 Quá trình điều khiển với yếu tố mờ, không chắc chắn ..................5
I.2.2 Phương pháp điều khiển mờ………………………………….... .5
Phần 2 : Tổng quan về vi điều khiển AVR ATmega32................................. 6
II.1 Sơ đồ nguyên lý kiến trúc AVR………………………………….........6
II.2 Cấu trúc chân của ATmega32................................................................7
Phần 3 : Xây dựng hệ thống điều khiển nhiệt trong lò ấp trứng gà……....7
III.1 Xây dựng nguyên lý xử lý bài toán……………………………….......7
III.1.1 Mờ hóa………………………………………………….. .....8
III.1.2 Lập luận mờ……………………………………………........9
III.1.3 Giải mờ…………………………………………………......10
III.2 Thiết kế phần cứng..............................................................................10
III.2.2 Sơ đồ nguyên lý………………………………………….....10
III.2.2.1 Module ATmega32................................................................10
III.2.2.2 Module RS232…………………………………................11
III.2.3 Sơ đồ chi tiết……………………………… ……………......11
III.2.3.1 Module ATmega32……………………......………......11
III.2.3.2 Module RS232……………………………......…….....12
III.2.3 3 Giới thiệu linh kiện……………………………......…..13
III.3 Xây dựng phần mềm:
III.1 Giới thiệu một số đoạn mã quan trọng trong chương trình…..13
IV/ Giới thiệu thiết bị và chương trình………………………………….....14
IV.1 Giới thiêu thiết bị…………………………………………................14
IV.2 Giới thiệu chương trình……………………………………...............15
IV.3 Kết luận………………………………………...................................16
Tài liệu than khảo……………………………………………………….......17
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
4
CHƯƠNG 1
TỔNG QUAN VỀ LOGIC MỜ
VÀ ĐIỀU KHIỂN MỜ.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
5
1.1 Tổng quan về logic mờ :
1.1.1 Tập mờ :
Logic mờ được xây dựng dựa vào cơ sở giá trị gần đúng, giá trị này nằm trong
khoảng giữa chân trị False và True. Lý tuyết này được giáo sư Lotfi Zadef giới
thiệu vào những năm 1960, nội dung của nó tương tự cách nói không chắc chắn
trong ngôn ngữ thường ngày.
- Theo ông, lý thuyết mờ không chỉ là một lý thuyết riêng lẻ mà chúng ta có
thể dùng khái niệm fuzzy cho mọi lý thuyết khác từ các thuyết về khái niệm rời rạc
đến liên tục.
- Khái niệm logic mờ gắn bó chặc chẽ với khái niệm tập mờ.
 Tập rõ (crisp set) : một tập hợp A là tập rõ, một phần tử x có thể có x € A
hoặc x € A. Để mô tả khái niệm thuộc về, ta có tể sử dụng hàm µ. Nếu x € A thì
µA(x)=1, nếu x € A thì µA(x)=0.
Ví dụ: A = tập hợp sinh viên của trường Đại Học Nha Trang.
 Tập mờ (fuzzy set): khác với tập rõ, khái niệm thuộc về được mở rộng để
phản ánh mức độ x là phần tử của A. Đặc trưng cho tập mờ, người ta dùng hàm
thành viên_membership function_ µA.
Ví dụ: A = tập hợp sinh viên giỏi tin của trường Đại Học Nha Trang.
-Một tập con U của tập S có thể được định nghĩa như một ánh xạ từ những
phần tử của S vào tập {0,1}.
Phép ánh xạ này có thể được xem như một tập hợp mà các phần tử của nó là
các cặp có thứ tự, mỗi cặp có thứ tự này tương ứng với mỗi một phần tử của tập S.
Phần tử đầu tiên (x) của cặp này chính là một phần tử của S, phần tử thứ hai chính là
một phần tử của tập {0,1}.
+) Giá trị 0 thể hiện ý nghĩa x không thuộc U.
+) Giá trị 1 thể hiện ý nghĩa x thuộc U.
-Tương tự như trên, một tập F là tập con của S được định nghĩa bằng phép ánh
xạ các phần tử của S vào tập {0,1} và hình thành các cặp số có thứ tự. Phần tử đầu
tiên của cặp số (x) là một phần tử trong S, phần tử thứ hai của cặp số (y) nằm trong
khoảng [0,1] thể hiện mức độ x € F.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
6
- Để tính toán phần tử thứ hai (y) của cặp số_thể hiện mức độ x € F_người ta
dùng hàm thành viên y= µF(x) . Hàm này cho giá trị càng gần 1 khi mức độ x thuộc
F càng cao và ngược lại
-Tập S được gọi là tập vũ trụ của tập con F.
Ví dụ: Cho tập vũ trụ U{ tập những người tham gia khảo sát}. Hãy tìm tập
TALL là tập những người cao.
Hàm thành viên:
µTALL(x) { 0 ; height(x) < 5ft
1 ; height(x) >7ft
(height(x)-5)/2 ; 5ft <= height() <=7ft
}
Ta được kết quả như sau:
Người Cao µTALL(x)
Billy 3' 2" 0.00
Yoke 5' 5" 0.21
Drew 5' 9" 0.38
Erik 5' 10" 0.42
Mark 6' 1" 0.54
Kareem 7' 2" 1.00
Từ bảng trên ta có mức độ phần tử Erik thuộc vào tập TALL là 0.42.
Định nghĩa tập mờ (L.Zadeh _1965): A là tập mờ trên tập vũ trụ U được xác
định bởi hàm:
µA: U  [0,1].
µA là hàm thuộc hay hàm thành viên (membership function).
µA(x) là mức độ thuộc của phần tử x vào tập mờ A.
1.1.2. Logic mờ :
Logic mờ là kết quả suy rộng của logic toán học cổ điển, khái niệm logic mờ
gắn bó chặt chẽ với khái niệm tập mờ đã nói ở trên.
Khái niệm fuzzy logic được hiểu thông qua định nghĩa về fuzzy set và các
phép toán cơ bản của nó.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
7
1.1.2.a. Các phép toán cơ bản của logic mờ :
Cho 3 tập mờ X,Y,Z với các hàm thành viên tương ứng µX(a), µY(a), µZ(a)
 Phép phủ định:
Z=not(X) : µZ(a)=1- µX(a).
 Phép giao (hội):
Z= X ∩ Y : µZ(a)= Min (µX(a), µY(a)).
 Phép hợp (tuyển):
Z=X U Y : µZ(a)=Max (µX(a), µY(a)).
Ta hoàn toàn có thể nhận thấy: nếu đặt các giá trị 0 và 1 vào các biểu thức trên
ta sẽ nhận được các giá trị giống như khi ta dùng luật logic thông thường, điều này
chứng tỏ logic mờ không mâu thuẩn với logic truyền thống mà đó là sự mở rộng các
tập luật khô cứng thành các luật mới uyển chuyển hơn.
Vi dụ: -Cho tập mờ TALL (ví dụ trên).
-Cho tập mờ OLD(già) với hàm thành viên như sau:
old (x) = { 0 ; age(x) < 18 yr.
(age(x)-18 yr.)/42 yr ; 18 yr. <= age(x) <= 60 yr.
1 ; if age(x) > 60 yr.
}
-Tập luật:
a = X is TALL and X is OLD.
b = X is TALL or X is OLD.
c = not (X is TALL).
Bảng kết quả:
height age X is TALL X is OLD a b c
------------------------------------------------------------------------
3' 2" 65 0.00 1.00 0.00 1.00 1.00
5' 5" 30 0.21 0.29 0.21 0.29 0.79
5' 9" 27 0.38 0.21 0.21 0.38 0.62
5' 10" 32 0.42 0.33 0.33 0.42 0.58
6' 1" 31 0.54 0.31 0.31 0.54 0.46
7' 2" 45 1.00 0.64 0.64 1.00 0.00
3' 4" 4 0.00 0.00 0.00 0.00 1.00
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
8
1.1.2.b. Biến ngôn ngữ (linguistics variable) :
Logic mờ liên quan đến lập luận trên các thuật ngữ mờ và mơ hồ trong ngôn
ngữ tự nhiên của con người.
Biến nhận các từ trong ngôn ngữ tự nhiên làm giá trị gọi là biến ngôn ngữ.
Biến ngôn ngữ được xác định bởi bộ bốn (x, T, U, M):
 x là tên biến.
 T là tập các từ (các giá trị ngôn ngữ) mà x có thể nhận.
 U là miền giá trị mà x có thể nhận.
 M là luật ngữ nghĩa, ứng với mỗi từ t€T với một tập mờ A.
Ví dụ: M=Phụ nữ tuổi trung niên thì sức khỏe yếu.
x= biến ngôn ngữ ”tuổi, sức khỏe”.
T= tập các từ “trung niên, yếu”.
U=miền giá trị của “tuổi” là [0..150 năm].
1.2. Tổng quan về điều khiển mờ :
Những khái niệm trừu tượng của logic mờ đã được cụ thể hóa và ứng dụng
thông qua những sản phẩm thông dụng trong cuộc sống thường ngày như: nồi cơm
điện, máy giặt, lò vi sóng, tủ lạnh.... Sự phát triển nhanh chóng của ngành điều
khiển mờ ( fuzzy control) là do những yếu tố sau:
- Trên cơ sở suy luận mờ, nguyên lý điều khiển mờ đã cho phép con người tự
động hóa kinh nghiệm điều khiển của mình cho một quá trình, một thiết bị..., tạo
được sự yên tâm cho họ như họ được chính tay điều khiển.
- Bộ điều khiển có cấu trúc đơn giản hơn rất nhiều so với những bộ điều khiển
kinh điển khác có cùng chức năng.
- Những cải tiến nhanh chóng của kỹ thuật vi xử lý đã làm một cầu nối không
thể thiếu giữa kết quả nghiên cứu lý thuyết và thực tế ứng dụng.
1.2.1 Nguyên lý làm việc :
Bộ điều khiển mờ là một bộ điều khiển làm việc theo nguyên tắc tự động hóa
những kinh nghiệm điều khiển của con người. Những kinh nghiệm này phải được
đúc kết lại thành luật hợp thành gồm nhiều mệnh đề hợp thành với cấu trúc chung:
if A=Ai then B=Bj
A, B là biến ngôn ngữ.
Ai , Bj là giá trị.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
9
- Mệnh đề hợp thành là nguyên tắc điều khiển được xây dựng từ những kinh
nghiệm (hoặc ý kiến chuyên gia) trong thực tế. Luật hợp thành là tập hợp các mệnh
đề hợp thành đó.
- Mô hình tổng quát của hệ thống điều khiển mờ:
- Các nhóm bộ điều khiển :
+) Bộ điều khiển SISO: một đầu vào và một đầu ra.
+) Bộ điều khiển SIMO: một đầu vào và nhiều đầu ra.
+) Bộ điều khiển MISO: nhiều đầu vào và một đầu ra.
+) Bộ điều khiển MIMO: nhiều đầu vào và một đầu ra.
- Cấu trúc của một bộ điều khiển mờ: gồm có 3 khâu chính
+) Khâu mờ hóa: có nhiệm vụ chuyển đổi một giá trị rõ ở đầu vào u0 thành
vector ui cho mệnh đề hợp thành thứ i.
+) Khâu lập luận mờ: xử lý các vector ui và cho ra giá trị mờ R với hàm thuộc
µR(y) của biến ngôn ngữ đầu ra.
+) Khâu giải mờ: chuyển đổi tập mờ µR(y) thành giá trị rõ y0 đầu ra cho đối
tượng.
Mô hình cấu trúc bộ điều khiển mờ:
Đối tượng điều khiển
(Object)
Bộ điều khiển
(Controller)
Cảm biến
(Sensor)
Mờ hóa
Lập luận mờ.
Giải mờ.
Vào u0 Ra y0
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
10
1.2.2 Quá trình điều khiển với yếu tố mờ, không chắc chắn :
Các phương pháp điều khiển truyền thống đòi hỏi người ta phải biết rõ bản
chất của đối tượng cần điều khiển. Tuy nhiên trong thực tế, ngoài các đối tượng cần
điều khiển ra còn có rất nhiều đối tượng gây nhiễu khác do đó người thiết kế rất khó
xác định các đặc trưng.
Vì đối tượng điều khiển là một hệ phức tạp và không thể biểu thị bằng các mô
hình toán nên người “chuyên gia” điều hành hệ thống chỉ có thể quan sát thông tin
vào để phán đoán hành vi của hệ thống. Nhận thức này được thâu tóm trong một tập
các mệnh đề if…then (hay các luật) với các biến vào và ra.
Nói chung các phương pháp điều khiển mờ đều gắn chặc với lập luận mờ và
gồm các đặc điểm sau:
 Chỉ dựa vào thông tin vào ra quan sát được trên đối tượng cần điều khiển.
 Mô hình định tính dựa trên ngôn ngữ.
 Giảm độ phức tạp tính toán nhờ mô hình định tính.
 Miền ứng dụng rộng lớn đa dạng.
1.2.3 Các phương pháp điều khiển mờ thông dụng :
a) Phương pháp xây dựng bộ điều khiển mờ dựa trên luật :
Ý tưởng của phương pháp này được đề xuất vào năm 1975 chủ yếu dựa vào
việc xây dựng một cách thức lập luận mờ và lượng hóa các khái niệm mờ phù hợp.
Đặc trưng của phương pháp này là tập hợp các luật (tri thức) được xây dựng
dựa vào tri thức của các chuyên gia, tức là tập luật là sự mô phỏng các tình huống
đáp ứng của các chuyên gia trong quá trình thao tác điều khiển.
Phương pháp này có ưu điểm này là đơn giản, nhưng cũng có các nhược điểm
như độ thích nghi kém, khó phát biểu tri thức chuyên gia dưới dạng luật.
b) Phương pháp xây dựng bộ điều khiển mờ dựa trên mô hình :
Nội dung của phương pháp này như sau:
- Xây dựng mô hình quan hệ mờ dựa trên quan sát input/output.
- Xây dựng thuật toán cho phép bộ điều khiển lựa chọn thao tác điều hành tốt
nhất.
- Có thể sử dụng mô hình tự học hay các mô hình lai giữa mô hình mờ và mô
hình toán học.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
11
- Ưu điểm: rất trực quan và dễ quan sát, giúp người thiết kế hệ thống dễ dàng
nắm bắt các cấu trúc và thành phần cua bộ điều khiển.
c) Phương pháp xây dựng bộ điều khiển thông minh dựa trên tri thức và logic
mờ:
Trong thực tế điều khiển người ta thường gặp những môi trường không thể thu
được các dữ liệu chính xác, không mô tả được cụ thể trạng thái.... trong những
trường hợp như vậy cần phải xây dựng các bộ điều khiển thông minh.
Đặc điểm của phương pháp như sau :
- Có khả năng sử dụng nhiều giải thuật điều khiển khác nhau, đánh giá được
chiến lược điều khiển nào thích ứng nhất. Việc đánh giá này dựa vào kỹ thuật tập
mờ và logic mờ.
- Có khả năng đánh giá và duy trì trạng thái gần tối ưu và đảm bảo độ tin cậy,
ngay cả khi một vài yếu tố của thiết bị điều khiển bị hỏng nó cũng có thể cấu hình
lại giải thuật đó hay chuyển sang một giải thuật khác thích ứng hơn.
- Có một cơ sở tri thức và kinh nghiệm đối với quá trình điều khiển cùng với
những kiến thức dạng luật mà các giải thuật sẽ sử dụng trong quá trình điều khiển .
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
12
CHƯƠNG 2
TỔNG QUAN VỀ VI ĐIỀU KHIỂN
AVR ATEMEGA.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
13
Vi điều khiển AVR thuộc họ vi điều khiển Atmel, nó là họ vi điều khiển mới
trên thị trường cũng như đối với người sử dụng.. Ngoài các tính năng như các họ
VĐK khác, nó còn tích hợp nhiều tính năng mới rất tiện lợi cho người thiết kế và
lập trình. Sự ra đời của AVR bắt nguồn từ yêu cầu thực tế là hầu hết khi cần lập
trình cho vi điều khiển, chúng ta thường dùng những ngôn ngữ bậc cao HLL (Hight
Level Language) để lập trình ngay cả với loại chip xử lí 8 bit trong đó ngôn ngữ C
là ngôn ngữ phổ biến nhất.
2.1 Phân loại AVR và các đặc điểm chính:
- Phân loại AVR:
+) AT90S8535: Không có lệnh nhân hoặc chia trên thanh ghi.
+) ATMEGA 8, 16, 32 (AVR loại 8 bit, 16 bit, 32 bit): Là loại AVR tốc độ
cao, tích hợp sẵn ADC 10 bit.
+) AVR tích hợp sẵn LCD driver : Atmega169, 329.
+) AVR có tích hợp SC (Stage Controller): AT90PWM thường dùng trong các
ứng dụng điều khiển động cơ hay chiếu sáng nên còn gọi là lighting AVR.
+) Attiny11, 12, 15: AVR loại nhỏ.
- Đặc điểm chính:
+) Kiến trúc RISC(Cã nghÜa lµ m¸y tÝnh dïng tËp lÖnh rót gän, bé vi xö lý kiÓu
nµy thùc hiÖn Ýt lÖnh h¬n nh÷ng bé vi xö lý kh¸c) với hầu hết các lệnh có chiều dài
cố định, truy nhập bộ nhớ nạp – lưu trữ và 32 thanh ghi đa năng.
+) Có nhiều bộ phận ngoại vi ngay trên chip, bao gồm: Cổng vào/ra số, bộ
biến đổi ADC, bộ nhớ EEFROM, bộ định thời, bộ điều chế độ rộng xung (PWM),..
+) Hầu hết các lệnh đều thực hiện trong một chu kỳ xung nhịp.
+) Hoạt động với chu kỳ xung nhịp cao, có thể lên đến 20 MHz tuỳ thuộc từng
loại chip cụ thể.
+) Bộ nhớ chương trình vµ bộ nhớ dữ liệu được tích hợp ngay trên chip.
+) Khả năng lập trình được trong hệ thống, có thể lập trình được ngay khi đang
được cấp nguồn trên bản mạch không cần phải nhấc chip ra khỏi bản mạch.
+) Hỗ trợ cho việc lập trình bằng ngôn ngữ bậc cao – ngôn ngữ C.
- Cốt lõi của AVR là sự kết hợp tập lệnh đầy đủ với các thanh ghi đa năng 32
bit. Tất cả các thanh ghi 32 bit này liên kết trực tiếp với khối xử lý số học và logic
(ALU) cho phép 2 thanh ghi độc lập được truy cập trong một lệnh đơn trong 1 chu
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
14
kỳ đồng hồ. Kết quả là tốc độ nhanh gấp 10 lần các bộ vi điều khiển CISC(Complex
Instruction Set Computer : máy tính với tập lệnh phức tạp). Một loại kiến trúc của
bộ xử lí được đặc trưng bởi tính chất là các lệnh có độ dài khác nhau (không cố
định) , thường là một số nhỏ các chế độ đa địa chỉ và thanh ghi) .
- Với các tính năng đã nêu, chế độ nghỉ (Idle) CPU trong khi cho phép bộ
truyền tin nối tiếp đồng bộ USART, giao tiếp 2 dây, chuyển đổi A/D, SRAM, bộ
đếm, bộ định thời, cổng SPI và hệ thống các ngắt vẫn hoạt động. Chế độ Power-
down lưu giữ nội dung của các thanh ghi nhưng làm đông lạnh bộ tạo dao động,
thoát khỏi các chức năng của chip cho đến khi có ngắt ngoài hoặc là reset phần
cứng. Chế độ Power-save đồng hồ đồng bộ tiếp tục chạy cho phép chương trình sử
dụng giữ được đồng bộ thời gian nhưng các thiết bị còn lại là ngủ.
- Để tối đa hoá hiệu năng tính năng và song song, AVR sử dụng kiến trúc với
bộ nhớ riêng biệt và các BUS cho chương trình và dữ liệu. Các câu lệnh trong bộ
nhớ chương trình được hoạt với một đường ống lệnh mức đơn. Trong khi một lênh
đang thực hiện, lệnh tiếp theo sẽ được nạp trước vào từ bộ nhớ chương trình. Điều
này làm cho các lệnh được thực hiện trong mọi chu kỳ đồng hồ. Bộ nhớ chương
trình là bộ nhớ In-System Reprogrammable Flash.
- Flash memory : Bé nhí flash, lµ mét lo¹i bé nhí sử dụng các chíp NAND
(tích hợp nhiều transitor lên một tấm bán dẫn), các chíp này có kích thước nhỏ, tốc
độ đọc/ghi cao, dung lượng lớn
- AVR cung cấp 1 vài nguồn ngắt khác nhau. Các ngắt này và vector reset
riêng biệt có vector chương trình riêng biệt nằm trong không gian nhớ chương trình.
Tất cả các ngắt được chỉ định bởi các bit cho phép riêng biệt mà các bit này phải
được ghi mức logic 1 cùng với bit cho phép ngắt toàn cục trong thanh ghi trạng thái
để cho phép ngắt. Phụ thuộc vào giá trị PC, các ngắt này phải được tự động loại bỏ
khi các bit Boot Lock - BLB02 or BLB12 - được lập trình. Yếu tố này cải thiện độ
an toàn phần mềm.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
15
2.2 Sơ đồ nguyên lý kiến trúc AVR :
- Sơ đồ cấu trúc AVR :
Các thành phần cơ bản:
- ALU : Đơn vị xử lý số học và logic. Các toán tử của ALU được chia làm 3
loại chính: Số học, logic, và xử lý bit. Một số phép xử lý của kiến trúc này cũng
cung cấp bộ nhân số có dấu và không có dấu và dạng phân số.
- Data SRAM : Bộ nhớ dữ liệu.
- EEPROM : Lµ lo¹i ROM cã thÓ xo¸ ®­îc bằng điện sau đó ghi lại mà
không cần lấy ra.
- DATA BUS – 8Bit : §­êng truyÒn d÷ liÖu 8Bit.
- I/O Lines : §­êng vµo ra tÝn hiÖu.
- 32 x 8 Gneral Purpose Registers : 32 thanh ghi ®a n¨ng 8 Bit.
- Status and control : Khèi nhËn biÕt tr¹ng th¸i vµ ®iÒu khiÓn.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
16
- Program counter : Bé ®Õm ch­¬ng tr×nh.
- Flash program memory : Bé nhí flash, tốc độ đọc/ghi cao, dung lượng lớn.
- Intruction register/ decoder : thanh ghi lÖnh
- IntErrupt unit: Bé xö lý ng¾t.
- SPIunit: (Serial Peripheral Interface) mạch ghép nối ngoại vi nối tiếp, là
mạch liªn kết dữ liệu nối tiếp đồng bộ cho phép bộ điều khiển truyền thông với các
thiết bị ngoại vi.
- Watchdog timer : là một bộ đếm có chức năng reset lại vi điều khiển khi
xảy ra sự kiện tràn (overflow).
- Analog comparator: bé so s¸nh tín hiệu t­¬ng tù I/O module1 -> I/O module
n các module vào ra tín hiệu .
- Status register: Thanh ghi trạng thái chứa thông tin về kết quả thưc hiện của
hầu hết các lệnh số học. Các thông tin này có thể được sử dụng để điều khiển
chương trình. Chú ý rằng các thanh ghi trạng thái được cập nhật sau tất cả các hoạt
động của ALU. Trong nhiều trường hợp, điều này sẽ bỏ đi những cần thiết khi sử
dụng câu lệnh so sánh chuyên dụng, kết quả nhanh hơn và đoạn chương trình ngắn
gọn hơn.
- I/O module1 -> I/O module n: Module vµo ra tÝn hiÖu.
- Direct / Indirect addressing: §­êng ®Þa chØ truyÒn trùc tiÕp / gián tiếp.
- Stack Pointer : Stack thường được sử dụng để chứa dữ liệu tạm thời, cho việc
lưu trữ các biến địa phương và cho việc lưu trữ địa chỉ trở về sau khi gọi các thường
trình và các ngắt. Thanh ghi con trỏ thường trỏ tới đỉnh của stack. Chú ý rằng stack
được thực hiện khi tăng thêm từ địa chỉ cao đến địa chỉ thấp, điều này nói lên rằng
khi thực hiện lệnh PUSH thì con trỏ sẽ tự động giảm. Con trỏ trỏ đến vùng ngăn xếp
dữ liệu SRAM .
- Không gian ngăn xếp trong SRAM phải được định nghĩa bằng chương trình
trước khi bất cứ thường trình hoặc ngắt được thực hiện. Con trỏ ngăn xếp phải
được set để trỏ tới địa chỉ trên $0100. Con trỏ ngăn xếp được giảm đi 1 khi dữ liệu
được cất vào ngăn xếp và được giảm đi 2 khi cất địa chỉ trở về của thường trình
hoặc ngắt. SP được tăng lên khi dữ liệu được lấy ra.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
17
2.3 Cấu trúc AVR ATmega16L :
Vi xử lý được chọn sử dụng trong đồ án này là AVR Atemega16L . Với những
tính năng rất tiện dụng cho lập trình và điều khiển, AVR Atemega16L đã được rất
nhiều kỹ thuật viên tin học, chuyên viên cơ-điện tử, ... sử dụng. Sau đây là vài chi
tiết quan trọng của nó.
2.3.1 Cấu trúc chân AVR Atemega16L :
- §iÖn ¸p ho¹t ®éng : tõ 2.7 ®Õn 5.5VDC
- VCC : CÊp nguån dương.
- GND : Nèi ®Êt .
- AVCC : Lµ ch©n cÊp ®iÖn cho cæng A(Port A ) vµ bé biÕn ®æi A/D.
- AREF : Lµ ch©n tÝn hiÖu tham chiÕu Analog ( t­¬ng tù ) nèi vµo bé biÕn ®æi
A/D.
- PORT B : Tõ PB7 ®Õn PB0 lµ cæng I/O 8-bit hai chiÒu víi c¸c ®iÖn trë Pull-up
bªn trong.
- PORT C : Port C từ PC0 đến PC7 lµ cæng I/O 7-bit hai chiÒu víi c¸c ®iÖn trë
Pull-up bªn trong (d­îc lùa chän cho mçi bit) .
- PORT D : Port D từ PD0 đến PD7 lµ cæng I/O 8-bit hai chiÒuvíi c¸c ®iÖn trë
Pull-Up bªn trong (®­îc lùa chän cho mçi bit.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
18
- PORT A : §Çu ra cña bé biÕn ®æi A/D.
- XTAL1 & XTAL2 : Ch©n vµo ra cña th¹ch anh t¹o dao ®éng.
2.3.2 Một số đặc điểm kỹ thuật quan trọng của AVR Atemega16L:
- Hiệu năng cao, tiêu thụ năng lượng ít.
- Kiến trúc RISC - Reduce Instruction Set Computer (Cã nghÜa lµ m¸y tÝnh
dïng tËp lÖnh rót gän, bé vi xö lý kiÓu nµy thùc hiÖn Ýt lÖnh h¬n nh÷ng bé vi xö lý
kh¸c).
- 131 câu lệnh, hầu hết các lệnh thực hiện trong một chu kỳ.
- 32 thanh ghi 8-bit đa năng.
- Tốc độc thực hiện lên tới 16 triệu lệnh trong 1 giây với tần số 16MHz.
- Có 2 bộ nhân, mỗi bộ thực hiện trong thời gian 2 chu kỳ.
- Các bộ nhớ chương trình và dữ liệu cố định.
- 16 Kb bộ nhớ Flash có khả năng tự lập trình trong hệ thống.
- Có thể thực hiện được 10.000 lần ghi/xoá.
- Vùng mã Boot tuỳ chọn với những bit khoá độc lập.
- Lập trình trên trong hệ thống bởi chương trình on-chip Boot.
- Thao tác đọc trong khi ghi thực sự.
- 512 bytes EEFROM.có thể thực hiện 100.000 lần ghi /xoá.
- Lập trình Khoá an ninh phần mềm: giao diÖn nèi tiÕp ®ång bé ( chuÈn IEEE
std.1149.1).Khi thùc hiÖn trao ®æi d÷ liÖu víi c¸c thiÕt bÞ t­¬ng thÝch th× khung d÷
liÖu 8Bit gi÷a 2 thiÕt bÞ ®­îc truyÒn ®ång bé (cïng xung nhÞp ®ång hå).
- LËp tr×nh bé nhí Flash, EEPROM, ng¾t, kho¸ Bit th«ng qua giao diÖn JTAG.
- 4 kênh PWM, 8 kênh ADC 10 bit.
- Giao điện nối tiếp 2 dây hướng tới byte.
- Bộ truyền tin nối tiếp USART khả trình.
- Power-on Reset và dò Brown-out khả trình.
- Bộ tạo dao động được định cỡ bên trong.
- Các nguồn ngắt bên trong và bên ngoài.
- 32 đường I/O khả trình.
- Chế độ năng lượng thấp: <1 A khi điện áp 2.7V
Atmega16L AVR được hỗ trợ bởi bộ chương trình đầy đủ và các tool(tiÖn Ých)
để phát triển hệ thống, báo gồm: bộ biên dịch C, macro assemblers, program
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
19
debugger/simulators(ch­¬ng tr×nh m« pháng), in-circuit emulators (m¹ch m«
pháng) và evaluation kits(kit ph¸t triÓn).
- Memories – bộ nhớ cña ATMEGA16L :
+) Kiến trúc AVR có 2 không gian bộ nhớ chính bao gồm bộ nhớ chương trình
và bộ nhớ dữ liệu. Thêm vào đó, Atmega16L có một bộ nhớ EEPROM để lưu trữ
dữ liệu. Tất cả 3 không gian này là tuyến tính và như thường lệ.
+) Atmega16L chứa 16K bytes bộ nhớ Flash có thể lập trình lại được nằm
trong chip để chứa chương trình. Từ khi tất cả các lệnh của AVR là 16 hoặc 32 bit
thì Flash được tổ chức thành 8Kx16. Vì lý do an toàn phần mềm nên bộ nhớ chương
trình Flash được chia thành 2 vùng: Vùng nạp chương trình boot(ch­¬ng tr×nh khëi
®éng) và vùng chương trình ứng dụng.
+) Bộ nhớ Flash có thể thực hiện ghi/xoá ít nhất 10.000 lần. Bộ đếm chương
trình (PC) là 12 bit , nó có thể địa chỉ hoá được 4K bộ nhớ chương trình.
Bản đồ bộ nhớ chương trình như hình vÏ:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
20
CHƯƠNG 3
XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN
NHIỆT ĐỘ
TRONG LÒ ẤP TRỨNG GÀ
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
21
3.1 Xây dựng nguyên lý xử lý bài toán :
Vấn đề đặt ra trong đồ án này như sau: không phụ thuộc vào nhiệt độ môi
trường trong thời điểm hiện tại cũng như sự biến đổi nhiệt độ của các đối tượng
khác trong lò ấp, ta phải điều chỉnh cường độ quạt và cường độ sáng của đèn sao
cho nhiệt độ trong lò ấp luôn trong ổn định trong khoảng 35-360
C.
Mô hình xử lý của bài toán :
Dựa vào kinh nghiệm thực tế, ta có thể điều chỉnh nhiệt độ trong lò ấp bằng
cách điều khiển hai đối tượng quạt và đèn tương ứng hai vấn đề cần giải quyết song
song là làm mát và làm ấm như sau:
- Vấn đề làm mát:
+) Nếu nhiệt độ là thấp thì không quạt.
+) Nếu nhiệt độ là vừa thì không quạt.
+) Nếu nhiệt độ là hơi nóng thì quạt ít.
+) Nếu nhiệt độ là nóng thì quạt vừa.
+) Nếu nhiệt độ là rất nóng thì quạt lâu.
- Vấn đề làm ấm:
+) Nếu nhiệt độ là cao thì không sáng.
+) Nếu nhiệt độ là vừa thì không sáng.
+) Nếu nhiệt độ là hơi lạnh thì sáng ít.
+) Nếu nhiệt độ là lạnh thì sáng vừa.
+) Nếu nhiệt độ là rất lạnh thì sáng mạnh.
Đối tượng điều khiển
(Object)
Desktop
Bộ điều khiển
(Controller)
Cảm biến
(Sensor)
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
22
Như vậy, bộ điều khiển làm việc theo nguyên tắc tự động hóa những kinh
nghiệm điều khiển của con người. Bộ điều khiển dùng trong đồ án này gồm hai bộ
điều khiển theo kiểu SISO (Single Input, Single Output) dùng để điều khiển hai đối
tượng là quạt và đèn. Nói cách khác ta sẽ tổ chức hai bộ điều khiển ảo SISO trên
cùng một tài nguyên vật lý để điều khiển hai đối tượng trên theo kinh nghiệm của
những chuyên gia trong lĩnh vực này.
Sau đây chúng ta sẽ lần lượt đi vào từng khâu xử lý.
3.1.1 Mờ hóa :
Nhiệm vụ của khâu này là chuyển đổi giá trị rõ input thành vectơ µi. Ta sẽ lần
lượt tiến hành mờ hóa cho từng đối tượng quạt và đèn tương ứng hai vấn đề đặt ra
ban đầu là làm mát và làm ấm. Khâu này được xem là khó nhất trong tất cả các
khâu của quá trình xử lý.
 Đối tượng quạt:
- Xác định các biến ngôn ngữ:
+)Với biến ngôn ngữ nhiệt độ ta có các tập mờ thấp, vừa , hơi nóng, nóng, rất
nóng. Tương ứng một giá trị input (t) với lần lượt các tập mờ trên ta có các hàm
sau: µthấp(t), µvừa(t), µhoinong(t), µnóng(t), µrấtnóng(t).
+)Với biến ngôn ngữ kết luận xác định cường độ quạt ta có các tập mờ: không quạt,
quạt tnhẹ, quạt vừa, quạt mạnh. Tương ứng một giá trị output (v) với lần lượt các
tập mờ trên ta có các hàm sau:µk.quạt(v), µq.ít(v), µq.vừa(v), µq.lâu(v).
Dựa vào kinh nghiệm của những người chăn nuôi gà lâu năm, các số liệu cụ
thể đã được thu nhận để sử dụng trong việc xây dựng các hàm thành viên.
- Ta xây dựng các hàm thành viên cho các tập mờ mát, vừa , hơi nóng, nóng,
rất nóng (đơn vị tính bằng 0
C):
µthấp(t) { 0 ; t >=35 µvừa(t) { 0; t=0
1; t<=17,5 0; t>=40
(35-t)/17.5; 17,5<t<35 1; 35<= t <=36
t/35; 0< t <35 40-t/4; 36< t < 40
} }
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
23
µhoinong(t){0; t<=17,5 µnong(t){ 0; t<=35
0; t>=45 0; t>=47
1; 37<=t<=40 1; 41<= t <=44
(t-17,5)/19,5 ; 17,5< t <37 (t-35)/6; 35< t <41
(45-t)/5 ; 40< t <45 (47-t)/3; 44< t <47
} }
µrấtnóng(t) { 0;t<=36
1;t>=45
(t-36)/9; 36< t <45
}
Đây là đồ thị hóa các hàm thành viên mát, vừa , hơi nóng, nóng, rất nóng ở
trên:
µ(t)
1 mat vua hoinong nong ratnong
0 17,5 35 36 37 40 41 44 45 47 t(0
C)
- Ta xây dựng các hàm thành viên cho các tập mờ không quạt, quạt nhẹ, quạt
vừa, quạt mạnh.
µk.quat(v){1; v=0 µq.nhẹ(v) {0; v< = 20 µq.vua(v){ 0; v<=50
0; v≠0 0; v>=200 0; v=255
} 1; 90<= t<=149 1; 150<=v<=199
(v-20)/70; 20< v <90 (v-50)/100; 50<v<150
(200-v)/51;149<v<200 (255-v)/56; 199<v<255
} }
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
24
µq.mạnh(v){ 0; v<=100
1; 200<=v<=255
(v-100)/100; 100<v<200
}
Đây là đồ thị hóa hàm thành viên không quạt, quạt nhẹ, quạt vừa, quạt mạnh:
µ(v)
1 quạt nhẹ quạt vừa quạt mạnh
khôngquạt
0 20 50 90 100 149 150 199 200 255 v(dv)
 Đối tượng đèn:
- Xác định các biến ngôn ngữ:
+)Với biến ngôn ngữ nhiệt độ ta có các tập mờ cao, vừa, hơi lạnh, lạnh,
rất lạnh. Tương ứng một giá trị input(tc) với lần lượt các tập mờ trên ta có các hàm
sau: µcao(tc), µvừa(tc), µhơilạnh(tc), µlạnh(tc), µrấtlạnh(tc).
+)Với biến ngôn ngữ kết luận xác định cường độ sáng ta có các tập mờ: không
sáng, sáng ít, sáng vừa, sáng mạnh. Tương ứng một giá trị output(a) với lần lượt
các tập mờ trên ta có các hàm sau:µk.sáng(a), µs.ít(a), µs.vừa(a), µs.mạnh(a).
- Ta xây dựng các hàm thành viên cho các tập mờ cao, vừa, hơi lạnh, lạnh, rất
lạnh (đơn vị tính bằng 0
C):
µcao(tc) { 0 ; tc <=24 µvừa(tc) {0; tc<=17
1; tc>=37 0; tc>=40
(tc-24)/13; 16<tc<25 1; 35<= tc <=36
(tc-17)/18; 17< tc <35 ( 40-tc)/4; 36< tc < 40
} }
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
25
µhơilạnh(tc){0; tc<=16 µlạnh(tc){ 0; tc<=10
0; tc>=37 0; tc>=34
1; 25<=tc<=34 1; 17<= tc <=24
(tc-16)/9 ; 16< tc <25 (tc-10)/7; 10< tc <17
(37-tc)/3 ; 34< tc <37 (34-tc)/10; 24< tc <34
} }
µrấtlạnh(tc) { 0; tc>=36
1; tc<=16
(25-tc)/9; 16< tc <25
}
Đây là đồ thị hóa các hàm thành viên cao, vừa, hơi lạnh, lạnh, rất lạnh:
µ(tc)
1 rất lạnh lanh hơilạnh vừa cao
0 10 16 17 24 25 34 35 36 37 40 tc(0
C)
- Ta xây dựng các hàm thành viên cho các tập mờ không sáng, sáng nhẹ, sáng
vừa, sáng mạnh.
µk.sáng(a){ 1; a=0 µs.nhẹ(a) {0; a< = 0 µs.vừa(a){ 0; a<=50
0; a≠0 0; a>=200 0; a=255
} } 1; 90<= t<=149 1; 150<=a<=199
(a-20)/70; 0< a <5 (a-50)/100; 50<a<150
(200-a)/51;35<a<30 (255-a)/56; 199<a<255
} }
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
26
µs.mạnh(a){ 0; a<=100
1; 200<=a<=255
(a-100)/100; 100<a<200
}
Đây là đồ thị hóa hàm thành viên không sáng, sáng nhẹ, sáng vừa, sáng
mạnh:
µ(a)
1 sáng nhẹ sáng vừa sáng mạnh
khôngsáng
0 20 50 90 100 149 150 199 200 255 a(dv)
Đến đây chúng ta đã hoàn thành khâu đầu tiên_mờ hóa và cũng là khâu khó
nhất trong quá trình xử lý của bộ điều khiển. Sau đây chúng ta tiếp tục đến với hai
khâu còn lại là lập luận mờ và giải mờ
3.1.2 Lập luận mờ :
Nhiệm vụ của khâu này là xử lý các vector ui và cho ra giá trị mờ R với hàm
thuộc µR(y) của biến ngôn ngữ đầu ra, vì thế chúng ta phải xây dựng tập luật dựa
vào quy tắc điều khiển ở trên tức luật hợp thành và thuật toán xác định giá trị mờ
của luật hợp thành.
 Xây dựng tập luật cho vấn đề làm mát :
R1: If t is thấp then v is k.quat.
R2: If t is vừa then v is k.quat.
R3: If t is hơi_nóng then v is q.nhẹ.
R4: If t is nóng then v is q.vừa.
R5: If t is rất_nóng then v is q.mạnh.
- Khi có một giá trị đầu vào (t), ta sẽ tính được trọng số của các luật chính là
kết quả thu nhận được từ các hàm thành viên :
W1= µthấp(t).
W2= µvừa(t).
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
27
W3= µhoinong(t).
W4= µnóng(t).
W5= µrấtnóng(t).
Theo lý thuyết hàm thành viên của kết luận cho bởi công thức :
µC(z) = Wi µ Ki(Z) ; i = 1 …N.
Ta có:
µc(v)=W1*k.quat(v)+W2*k.quat(v)+W3*q.it(v)+W4*q.vua(v)+W5*q.mạnh(v).
 Xây dựng tập luật cho vấn đề làm ấm :
R1: If tc is cao then v is k.sáng.
R2: If tc is vừa then v is k.sáng.
R3: If tc is hơi_lạnh then v is s.nhẹ.
R4: If tc is lạnh then v is s.vừa.
R5: If tc is rất_lạnh then v is s.mạnh.
- Khi có một giá trị đầu vào (tc), ta sẽ tính được trọng số của các luật chính là
kết quả thu nhận được từ các hàm thành viên :
W1’= µthấp(tc).
W2’= µvừa(tc).
W3’= µhoinong(tc).
W4’= µnóng(tc).
W5’= µrấtnóng(tc).
Theo lý thuyết hàm thành viên của kết luận cho bởi công thức:
µC(z) = Wi µ K1i(Z) ; i = 1 …N.
Ta có:
µc(a)=W1’*k.sáng(a)+W2*k.sáng(a)+W3’*s.nhẹ(a)+W4’*s.vừa(a)+W5’*s.mạnh(
a).
Đến đây chúng ta đã hoàn thành khâu thứ hai của quá trình xử lý_lập luận mờ,
việc xây dựng các tập luật và thuật toán xác định giá trị mờ của luật hợp thành đã
hoàn tất. Tiếp đến ta đến với khâu cuối cùng: giải mờ.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
28
3.1.3 Giải mờ :
Nhiệm vụ của khâu này là chuyển đổi tập mờ µR(y) thành giá trị rõ y0 đầu ra
cho các đối tượng. Phương pháp khử mờ được chọn lựa là phương pháp lấy điểm
trọng tâm.
- Ta có công thức tính giá trị rõ x0 của tập mờ A, tập vũ trụ U như sau:
 x µA (x)dx   x µUi (x)dx
x0 = =
 µA (x) dx   µUi (x) dx
- Tập mờ dạng hình thang :
µ(m)
H
m1 m2 m
a b
- Sau khi tính các tích phân ta được kết quả :
Jm= xµA (x)dx = (H/6) * (3*m2
2
– 3*m1
2
+ b2
– a2
+3*m2*b+3*m1*a ).
Im=  µA (x)dx = (H/2) * (2*m2 - 2*m1 + a + b ).
 Áp dụng cho đối tượng quạt ta có:
5
∑ Jm
i=1
5
∑ Im
i=1
v0 =
U
U
U
U
U
U
U
U
i=1
n
i=1
n
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
29
Áp dụng cho từng luật trong vấn đề làm mát với:
Im= (H/2) * (2*m2 - 2*m1 + a + b )
Jm= (H/6) * (3*m2
2
– 3*m1
2
+ b2
– a2
+3*m2*b+3*m1*a )
Kết quả rõ ở đầu ra sẽ là: v0 = Jm/Im (đv).
 Áp dụng cho đối tượng đèn ta có:
5
∑ Jm’
i=1
5
∑ Im’
i=1
Áp dụng cho từng luật trong vấn đề làm mát với:
Im’= (H’/2) * (2*m’2 - 2*m’1 + a’ + b’ )
Jm’= (H’/6) * (3*m’2
2
– 3*m1
2
+ b’2
– a’2
+3*m’2*b’+3*m’1*a’ )
Kết quả rõ ở đầu ra sẽ là: a0 = Jm’/Im’ (đv).
Trên đã trình bày xong các khâu xử lý bái toán về mặt nguyên lý của bộ điều
khiển. Đến đây xem như đề tài đã hoàn thành cơ bản về mặt lý thuyết, các yếu tố
liên quan đến nội dung các vấn đề cần giải quyết như tri thức chuyên gia, luật hợp
thành, giải thuật cho xử lý của bộ điều khiển... đã được xử lý và trình bày. Tiếp theo
chúng ta sẽ đến với nội dung rất quan trọng của đồ án là phần thiết kế và cài đặt
trên thực tế.
a0 =
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
30
CHƯƠNG 4
THIẾT KẾ VÀ CÀI ĐẶT HỆ THỐNG
ĐIỀU KHIỂN NHIỆT
TRONG LÒ ẤP TRỨNG GÀ .
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
31
4.1 Thiết kế phần cứng :
Khái quát những tính năng của phần cứng:
- Hệ thống điều khiển trong đồ án thực hiện nội dung chủ yếu là điều khiển
nhiệt độ tự động theo tư duy của logic mờ, tức phần cứng được dùng là một bộ điều
khiển mờ thực sự với đầy đủ các thuộc tính, quá trình và đặc điểm của nó.
- Bên cạnh đó hệ thống còn cho phép người sử dụng có thể trực tiếp điều khiển
bằng tay các đối tượng quạt và đèn thông qua một giao diện trên máy tính với các
nút bấm tương tự như việc điều khiển một chiếc máy quạt hay một chiếc đèn bàn
mà chúng ta đã rất quen thộc trogn cuộc sống thường ngày .
- Trong tất cả các quá trình điều khiển, các thông số cụ thể về cường độ, nhiệt
độ, trạng thái hoạt động... luôn được hiển thị trên LCD gắn trực tiếp trên mạch điện
đề người dùng có thể theo dõi sát tiến trình làm việc của thiết bị giúp họ an tâm hơn
khi sử dụng.
- Đối với những người quan tâm đến các chỉ số mờ, họ có thể quan sát chúng
một cách dễ dàng thông qua một bảng thông số mờ được thiết kế trên máy tính.
Với những tính năng nói trên, yêu cầu quan trọng nhất của phần cứng là khả
năng kết nối và trao đổi dữ liệu với máy tính. Ngoài ra phần cứng còn phải điều
chỉnh được tốc độ động cơ quạt và cường độ sáng của đèn.
- Để thực hiện được điều này, tôi đã thiết kế hai module trên phần cứng:
+) Module ATmega: là module chính thực hiện các thao tác xử lý và điều
khiển đối tượng.
+) Module RS232: là module thực hiện việc giao tiếp, trao đổi dữ liệu giữa
Module ATmega và máy tính.
Sau đây là phần thiết kế về phần cứng nhằm đáp ứng các khả năngtrên cho hệ
thống điều khiển.
4.1.1 Sơ đồ nguyên lý :
4.1.1.1 Module ATmega :
Như đã nói ở trên module này thực hiện các thao tác xử lý và điều khiển đối
tượng, sau đây là chi tiết hoạt động và sơ đồ thiết kế của nó.
- Sơ đồ nguyên lý của Module ATmega:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
32
- Cảm biến nhiệt LM335 nhận nhiệt độ từ môi trường ngoài và liên tục cập
nhật thông số này cho ATmega16L theo một chu kỳ được đặt sẵn. Đây là loại cảm
biến nhiệt tương đối chậm, do đó việc cảm ứng với nhiệt độ môi trường là chưa cao,
tuy nhiên trong giới hạn của đề tài này chúng ta chưa quan tâm lắm đến chất lượng
của cảm biến nhiệt.
- Chip ATmega nhận tín hiệu từ cảm biến nhiệt, tại đây bộ chuyển đổi
A/D(Analog-Digital) tích hợp sẵn trong Chip sẽ tiến hành chuyển đổi tín hiệu tương
tự thành tín hiệu số. Sau khi thực hiện việc chuyển đổi Chip ATmega16L sẽ tiếp
tục xử lý, một đường tín hiệu được đưa hiển thị trên LCD, một đường khác được
đưa đến module RS232.
- Module RS232 sẽ “chuyên chở ” dữ liệu qua lại giữa máy tính với module
ATmega. Thông số nhiệt độ sẽ được lên máy tính và các thông số kết quả xử lý từ
máy tính cũng sẽ được trả về module ATmega.
- Tất cả các việc trao đổi này được thực hiện thông qua các Port giao tiếp có
sẵn trên ATmega16L. Phần này sẽ được nói rõ hơn trong phần sau của bài báo cáo
này.
4.1.1.2 Module RS232 :
- Module RS232 làm nhiệm vụ truyền thông giữa máy tính và Chip AVR qua
cổng COM của máy tính.
- Sơ đồ nguyên lý của module RS232 :
Module RS232 Chip ATmega16L
Cảm biến nhiệt
(LM335)
LCD
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
33
COM PORT
- IC được dùng trong module RS232 là Max 232, đây là IC được thiết kế
chuyên dùng cho việc truyền thông giữa máy tính và các thiết bị ngoại vi. Kỹ thuật
này được gọi là kỹ thuật truyền thông nối tiếp.
- Nhiệt độ và các thông số khác sẽ được đưa lên máy tính thông qua sự điều
khiển của Max232. Giao diện kết nối giữa chúng là cổng COM.
- Giao tiếp giữa module RS232 và module ATmega được thực hiện thông qua
một PORT đã có sẵn trên ATmega16L.
- Mối liên hệ giữa các thành phần trong sơ đồ trên là mối liện hệ hai chiều.
Tức là giữa chúng luôn có sự trao đổi thông tin qua lại lẫn nhau.
4.1.2 Sơ đồ chi tiết :
4.1.2.1 Module ATmega32 :
- Các Port được lấy ra lần lượt đưa vào các khe cắm từ J1 đến J4.
- Khe J được vẽ trích ra từ các chân 7, 8, 9, 10 và các chân nguồn của Chip
nhằm làm rõ đây là nơi giao tiếp với máy tính qua cổng LPT để nạp chương trình
cho Chip.
- Các chân nối với J4 là nơi giao tiếp với LCD.
+) Sơ lược t¸c dông c¸c linh kiÖn :
+) LM335 c¶m biÕn nhiÖt ®é tõ m«i tr­êng bªn ngoµi ®Ó lÊy tÝn hiÖu nhiÖt ®é
®­a vµo vi xö lý.
+) LCD gi¶i m· vµ hiÓn thÞ nhiÖt ®é và các thông khác.
+) ATmega16L ®iÒu khiÓn hoạt động của thiÕt bÞ theo sự biến thiên nhiÖt ®é
môi trường.
+) Th¹ch anh t¹o dao ®éng cho ATMEGA16L.
+) Led ®á cảnh báo khi nhiÖt ®é tăng quá cao.
+) Led xanh cảnh báo khi gi¶m nhiÖt ®é giảm xuống quá thấp.
- Hình ảnh phần chính của sơ đồ chi tiết module ATmega:
Max 232
Desktop Module Atmega16L
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
34
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
35
4.1.2.2 Module RS232 :
- Sơ đồ chi tiết:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
36
- Giao tiếp giữa máy tính và thiết bị được thực hiện thông qua cổng COM.
- Tác dụng các linh kiện:
+) Connector D89: giao diện cổng COM gồm 9 chân dùng để kết nối máy tính.
+) IC Max232: điều khiển việc truyền thông, đảm bảo hoạt động này diễn ra
thông suốt.
+) Các chân được cấp nguồn và kết nối với thiết bị như trên sơ đồ.
+) Các tụ điện: lọc nhiễu cho thiết bị.
+) Các điện trở: chiết áp, bảo vệ về mặt điện cho IC Max232, tránh những cú
sốc điện có thể làm hỏng IC.
4.1.3 Một số thiết bị khác:
a) Cảm biến nhiệt LM335:
- LM335 là một sản phẩm của công ty Dallas (Mü), đây cũng là công ty đóng
góp nhiều vào việc cho ra đời bus một dây và các cảm biến một dây.
Hình dạng bên ngoài của cảm biến:
- §iÖn ¸p ho¹t ®éng tõ 3.0 – 5VDC
- Ch©n 1 : GND (màu xanh lá).
- Ch©n 2 : DQ (truyÒn tÝn hiÖu_ màu xanh dương).
- Ch©n 3 : Nguån Vcc(màu đỏ).
- Cã thÓ ®o nhiÖt ®é tõ -55 ®Õn +125˚C
Các đặc điểm kỹ thuật của cảm biến DS18B20:
- Không cần thêm linh kiện bên ngoài. Điện áp nguồn nuôi có thể thay đổi
trong khoảng rộng, từ 3,0 V đến 5,5 V một chiều và có thể được cấp thông qua
đường dẫn dữ liệu.
- Dòng tiêu thụ tại chế độ nghỉ cực nhỏ.
- Thời gian lấy mẫu và biến đổi thành số tương đối nhanh, không quá 200 ms.
- Mỗi cảm biến có một mã định danh duy nhất 64 bit chứa trong bộ nhớ ROM
trên chip (on chip), giá trị nhị phân được khắc bằng tia laze.
- Đầu đo nhiệt độ số DS18B20 đưa ra số liệu để biểu thị nhiệt độ đo được dưới
dạng mã nhị phân 9 bit. Các thông tin được gửi đến và nhận về từ DS18B20 trên
giao diện 1-wire, do đó chỉ cần hai đường dẫn gồm một đường cho tín hiệu và một
đường làm dây đất là đủ để kết nối vi điều khiển đến điểm đo.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
37
b) Mạch nạp Chip:
- §iÖn ¸p ho¹t ®éng : 4.5 - 5 V, kh«ng cÇn cÊp nguån cho m¹ch n¹p chØ cÇn
cÊp nguån cho m¹ch chñ.
- PhÇn mÒm sö dông CodeVisionAVR hoÆc PonyProg nh­ng Code Vision
AVR dÔ sö dông h¬n.
- Cã thÓ n¹p ®­îc 25 lo¹i vi ®iÒu khiÓn cña AVR.
- Cã 6 ch©n ra nèi víi chip AVR:
+) Vcc : §Ó cÊp nguån dương cho m¹ch n¹p tõ chip chñ, nèi víi ch©n
Vcc(10,30) cña ATMEGA16L.
+) GND : CÊp nguån âm cho m¹ch n¹p tõ chip chñ,nèi víi ch©n GND(11,31)
cña ATMEGA16L.
+) MOSI : Master Output, Slave Input ( xuất ra từ tầng chủ), nèi víi ch©n
MOSI(6).
+) MISO : Master Input, Slaver Output( xuất ra từ tầng tớ),nèi víi ch©n
MISO(7).
+) SCK : Serial Clock (xung nhÞp nèi tiÕp),nèi víi ch©n SCK cña chip (8).
+) RST : Ch©n Reset,t­¬ng tù nèi víi ch©n(9).
- Sơ đồ:
- KÕt nèi víi m¸y tÝnh b»ng cæng m¸y in (LPT):
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
38
+) ¦u ®iÓm : m¹ch ®¬n gi¶n dÔ chÕ t¹o,gi¸ thµnh rÎ, cã thÓ n¹p ®­îc nhiÒu vi
®iÒu khiÓn AVR, kh«ng ph¶i th¸o chip khái m¹ch chñ, kh«ng cÇn cÊp nguån riªng
cho m¹ch n¹p.
+) Nh­îc ®iÓm : v× kh«ng cã ®iÖn trë h¹n dßng cho cæng LPT nªn dÔ g©y h¹i
cho m¸y tÝnh.
c) Các linh kiện quan trọng được dùng:
 Chip Atmega16L:
 LCD 2 dßng 16 ký tù:
- §iÖn ¸p ho¹t ®éng tõ 2.7 – 5VDC.
- TÇn sè hiÓn thÞ 2MHZ ë møc ®iÖn ¸p 5V.
 Thạch anh 4.000Mhz: tạo dao động cho ATmega16L.
 IC æn ¸p 5V t¹o ®iÖn ¸p 5V cÊp cho m¹ch
 Một số tụ điện và điện trở :
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
39
4.2 Thiết kế phần mềm:
4.2.1 Giải thuật:
Như đã trình bày ở phần đầu tiên của bài báo cáo, giải thuật chủ yếu của
chương trình dựa vào các khâu xử lý của bộ điều khiển mờ. Các bước quan trọng
nhất của giải thuật đã được nói rất rõ ở phần III. Sau đây tôi xin tóm tắt và hệ thống
lại các bước theo hình thức mã giả.
 Giải thuật thực hiện việc làm mát:
- Input: Nhiệt độ
- Output: Cường độ quạt.
- Method:
t0=0;//khởi tạo nhiệt độ;
v=0; //khởi tạo cường độ quạt
While (ket_thuc=false) do
{ t0 = nhiệt độ nhận từ thiết bị ( ) ;
m1=m2=a=b=0; //khởi tạo các tham số dùng cho việc giải mờ.
//tính hàm thành viên
qi[0] = thap(t0);
qi[1] = vua(t0);
qi[2] = hoi_nong(t0);
qi[3] = nong[t0];
qi[4] = rat_nong[t0];
khoi_tao(Im, Jm);
//tính giá trị hàm thành viên của kết luận và giải mờ
k_quat(qi[0], var m1, var m2, var a, var b); //luật 1
Im= Im+qi[0]*tinh_I(qi[0], m1,m2, a, b);
Jm=Jm+qi[0]*tinh_J(qi[0], m1,m2, a, b);
k_quat(qi[1], var m1, var m2, var a, var b); //luật 2
Im= Im+qi[1]*tinh_I(qi[1], m1,m2, a, b);
Jm=Jm+qi[1]*tinh_J(qi[1], m1,m2, a, b);
q_nhe(qi[2], var m1, var m2, var a, var b); //luật 3
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
40
Im= Im+qi[2]*tinh_I(qi[2], m1,m2, a, b);
Jm=Jm+qi[2]*tinh_J(qi[2], m1,m2, a, b);
q_vua(qi[3], var m1, var m2, var a, var b); //luật 4
Im= Im+qi[3]*tinh_I(qi[3], m1,m2, a, b);
Jm=Jm+qi[3]*tinh_J(qi[3], m1,m2, a, b);
q_manh(qi[4], var m1, var m2, var a, var b); //luật 5
Im= Im+qi[5]*tinh_I(qi[5], m1,m2, a, b);
Jm=Jm+qi[5]*tinh_J(qi[5], m1,m2, a, b);
if (Im=0) then v0=0
else v0=Jm/Im;
Chuyển v0 đến quạt ( );
If (ngừng sử dụng = true) then ket_thuc= true
else ket_thuc=false;
}
 Giải thuật thực hiện việc làm ấm:
- Input: Nhiệt độ
- Output: Cường độ sáng.
- Method:
tc0=0;//khởi tạo nhiệt độ;
z=0; //khởi tạo cường độ sáng.
While (ket_thuc=false) do
{ tc0 = nhiệt độ nhận từ thiết bị ( ) ;
m’1=m’2=a’=b’=0; //khởi tạo các tham số dùng cho việc giải mờ.
//tính hàm thành viên
qj[0] = cao(tc0);
qj[1] = vua(tc0);
qj[2] = hoi_lanh(tc0);
qj[3] = lanh[tc0];
qj[4] = rat_lanh[tc0];
khoi_tao(Imc, Jmc);
//tính giá trị hàm thành viên của kết luận và giải mờ
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
41
k_sang(qj[0], var m’1, var m’2, var a’, var b’); //luật 1
Imc= Imc+qj[0]*tinh_Ic(qj[0], m’1, m’2, a’, b’);
Jmc=Jmc+qj[0]*tinh_Jc(qj[0], m’1,m’2, a’, b’);
k_sang(qj[1], var m’1, var m’2, var a’, var b’); //luật 2
Imc= Imc+qj[1]*tinh_Ic(qj[1], m’1, m’2, a’, b’);
Jmc=Jmc+qj[1]*tinh_Jc(qj[1], m’1,m’2, a’, b’);
sang_nhe(qj[2], var m’1, var m’2, var a’, var b’); //luật 3
Imc= Imc+qj[2]*tinh_Ic(qj[0], m’1, m’2, a’, b’);
Jmc=Jmc+qj[2]*tinh_Jc(qj[0], m’1,m’2, a’, b’);
sang_vua(qj[3], var m’1, var m’2, var a’, var b’); //luật 4
Imc= Imc+qj[3]*tinh_Ic(qj[3], m’1, m’2, a’, b’);
Jmc=Jmc+qj[3]*tinh_Jc(qj[3], m’1,m’2, a’, b’);
sang_manh(qj[4], var m’1, var m’2, var a’, var b’); //luật 5
Imc= Imc+qj[4]*tinh_Ic(qj[4], m’1, m’2, a’, b’);
Jmc=Jmc+qj[4]*tinh_Jc(qj[4], m’1,m’2, a’, b’);
if Imc=0 then a0=0
else a0=Jm/Im;
Chuyển a0 đến đèn ( );
If (ngừng sử dụng = true) then ket_thuc= true
else ket_thuc=false;
}
- Trên là giải thuật của việc làm mát và làm ấm. Sau đây là phần cài đặt hệ
thống trên thực tế.
4.2.2 Cài đặt chương trình:
Chương trình được cài đặt bằng ngôn ngữ Visual Basic 8.0 trong bộ Visual
Studio 2005. Với sự hỗ trợ khá mạnh của VB8.0 về phần lập trình hệ thống và phần
lập trình hướng đối tượng nên đây là một sự lựa chọn rất thích hợp cho đề tài.
Sau đây tôi xin giới thiệu một số đoạn code quan trọng trong chương trình:
- Các module tính toán giá trị cho hàm thành viên cho việc làm mát:
 Hàm tính giá trị cho hàm thành viên nhiệt độ thấp:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
42
Public Function thap(ByVal t As Single) As Single
If (t >= 35) Then thap = 0 Else
If (t <= 17.5) Then thap = 1 Else
If (t > 17.5) And (t < 35) Then thap = (35 - t) / 17.5
End Function
 Hàm tính giá trị cho hàm thành viên nhiệt độ vừa:
Public Function vua(ByVal t As Single) As Single
If (t = 0) Or (t >= 40) Then vua = 0 Else
If (t >= 35) And (t <= 36) Then vua = 1 Else
If (t > 0) And (t < 35) Then vua = t / 35 Else
If (t > 36) And (t < 40) Then vua = (40 - t) / 4
End Function
 Hàm tính giá trị cho hàm thành viên nhiệt độ hơi nóng:
Public Function hoinong(ByVal t As Single) As Single
If (t <= 17.5) Or (t >= 45) Then hoinong = 0 Else
If (t >= 37) And (t <= 40) Then hoinong = 1 Else
If (t > 17.5) And (t < 37) Then hoinong = (t - 17.5) / 19.5 Else
If (t > 40) And (t < 45) Then hoinong = (45 - t) / 5
End Function
 Hàm tính giá trị cho hàm thành viên nhiệt độ nóng:
Public Function nong(ByVal t As Single) As Single
If (t <= 35) Or (t >= 47) Then nong = 0 Else
If (t >= 41) And (t <= 44) Then nong = 1 Else
If (t > 35) And (t < 41) Then nong = (t - 35) / 6 Else
If (t > 44) And (t < 47) Then nong = (47 - t) / 3
End Function
 Hàm tính giá trị cho hàm thành viên nhiệt độ rất nóng:
Public Function ratnong(ByVal t As Single) As Single
If (t <= 36) Then ratnong = 0 Else
If (t >= 45) Then ratnong = 1 Else
If (t > 36) And (t < 45) Then ratnong = (t - 36) / 9
End Function
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
43
- Các module tính toán giá trị của kết luận xác định cường độ quạt:
 Hàm xác định giá trị kết luận không quạt:
Public Sub khong_quat(ByVal qi As Single, ByRef m1 As Single, ByRef m2
As Single, ByRef a As Single, ByRef b As Single)
qi = qi
a = 0
b = 0
m1 = 0
m2 = 0
End Sub
 Hàm xác định giá trị kết luận quạt nhẹ:
Public Sub quat_nhe(ByVal qi As Single, ByRef m1 As Single,ByRef m2
As Single, ByRef a As Single, ByRef b As Single)
a = qi * 70
b = qi * 51
m1 = 20 + a
m2 = 200 - b
End Sub
 Hàm xác định giá trị kết luận quạt vừa:
Public Sub quat_vua(ByVal qi As Single, ByRef m1 As Single, ByRef m2
As Single, ByRef a As Single,ByRef b As Single)
a = qi * 100
b = qi * 56
m1 = 50 + a
m2 = 255 - b
End Sub
 Hàm xác định giá trị kết luận quạt mạnh:
Public Sub quat_manh(ByVal qi As Single, ByRef m1 As Single, ByRef m2
As Single, ByRef a As Single,ByRef b As Single)
a = qi * 100
b = 0
m1 = 100 + a
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
44
m2 = 255
End Sub
 Module tính Im và Jm:
Public Function tinh_I(ByVal H As Single, ByVal m1 As Single, ByVal m2
As Single, ByVal a As Single, ByVal b As Single) As Single
tinh_I = H * (2 * m2 - 2 * m1 + a + b) / 2
End Function
Public Function tinh_J(ByVal H As Single, ByVal m1 As Single, ByVal
m2 As Single, ByVal a As Single, ByVal b As Single) As Single
tinh_J = H * (3 * m2 * m2 - 3 * m1 * m1 + 3 * m1 * a + 3 * m2 * b + b * b - a * a) / 6
End Function
 Module tính ra cường độ quạt :
Public Sub tinh_v0()
Dim m1 As Single
Dim m2 As Single
Dim a As Single
Dim b As Single
Dim Jm As Single
Dim Im As Single
qi(0) = thap(t0)
qi(1) = vua(t0)
qi(2) = hoinong(t0)
qi(3) = nong(t0)
qi(4) = ratnong(t0)
Im = 0
Jm = 0
If t0 <= 36 Then
v0 = 0
ElseIf t0 >= 47 Then
v0 = 255
Call khong_quat(qi(0), m1, m2, a, b) 'nhiet do thap
Im = Im + qi(0) * tinh_I(qi(0), m1, m2, a, b)
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
45
Jm = Jm + qi(0) * tinh_J(qi(0), m1, m2, a, b)
Call khong_quat(qi(1), m1, m2, a, b) 'nhiet do vua
Im = Im + qi(1) * tinh_I(qi(1), m1, m2, a, b)
Jm = Jm + qi(1) * tinh_J(qi(1), m1, m2, a, b)
Call quat_nhe(qi(2), m1, m2, a, b) 'nhiet do hoi nong
Im = Im + qi(2) * tinh_I(qi(2), m1, m2, a, b)
Jm = Jm + qi(2) * tinh_J(qi(2), m1, m2, a, b)
Call quat_vua(qi(3), m1, m2, a, b) 'nhiet do nong
Im = Im + qi(3) * tinh_I(qi(3), m1, m2, a, b)
Jm = Jm + qi(3) * tinh_J(qi(3), m1, m2, a, b)
Call quat_manh(qi(4), m1, m2, a, b) 'nhiet do rat nong
Im = Im + qi(4) * tinh_I(qi(4), m1, m2, a, b)
Jm = Jm + qi(4) * tinh_J(qi(4), m1, m2, a, b)
Else
Im = 0
Jm = 0
Call khong_quat(qi(0), m1, m2, a, b) 'nhiet do thap
Im = Im + qi(0) * tinh_I(qi(0), m1, m2, a, b)
Jm = Jm + qi(0) * tinh_J(qi(0), m1, m2, a, b)
Call khong_quat(qi(1), m1, m2, a, b) 'nhiet do vua
Im = Im + qi(1) * tinh_I(qi(1), m1, m2, a, b)
Jm = Jm + qi(1) * tinh_J(qi(1), m1, m2, a, b)
Call quat_nhe(qi(2), m1, m2, a, b) 'nhiet do hoi nong
Im = Im + qi(2) * tinh_I(qi(2), m1, m2, a, b)
Jm = Jm + qi(2) * tinh_J(qi(2), m1, m2, a, b)
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
46
Call quat_vua(qi(3), m1, m2, a, b) 'nhiet do nong
Im = Im + qi(3) * tinh_I(qi(3), m1, m2, a, b)
Jm = Jm + qi(3) * tinh_J(qi(3), m1, m2, a, b)
Call quat_manh(qi(4), m1, m2, a, b) 'nhiet do rat nong
Im = Im + qi(4) * tinh_I(qi(4), m1, m2, a, b)
Jm = Jm + qi(4) * tinh_J(qi(4), m1, m2, a, b)
If Im = 0 Then
v0 = 0
Else : v0 = Jm / Im
End If
End If
Labelim.Text = Im
Labeljm.Text = Jm
End Sub
 Module tính ra cường độ sáng của đèn:
Private Sub tinh_a0()
Dim mc1 As Single
Dim mc2 As Single
Dim ac As Single
Dim bc As Single
Dim Jmc As Single
Dim Imc As Single
qj(0) = cao(tc0)
qj(1) = vuatc(tc0)
qj(2) = hoi_lanh(tc0)
qj(3) = lanh(tc0)
qj(4) = rat_lanh(tc0)
Imc = 0
Jmc = 0
If tc0 >= 35 Then
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
47
a0 = 0
ElseIf tc0 <= 16 Then
a0 = 255
Call sang_manh(qj(4), mc1, mc2, ac, bc) 'nhiet do rat lanh
Imc = Imc + qj(4) * tinh_Ic(qj(4), mc1, mc2, ac, bc)
Jmc = Jmc + qj(4) * tinh_Jc(qj(4), mc1, mc2, ac, bc)
Call sang_vua(qj(3), mc1, mc2, ac, bc) 'nhiet do lanh
Imc = Imc + qj(3) * tinh_Ic(qj(3), mc1, mc2, ac, bc)
Jmc = Jmc + qj(3) * tinh_Jc(qj(3), mc1, mc2, ac, bc)
Call sang_it(qj(2), mc1, mc2, ac, bc) 'nhiet do hoi lanh
Imc = Imc + qj(2) * tinh_Ic(qj(2), mc1, mc2, ac, bc)
Jmc = Jmc + qj(2) * tinh_Jc(qj(2), mc1, mc2, ac, bc)
Call khong_sang(qj(1), mc1, mc2, ac, bc) 'nhiet do vua
Imc = Imc + qj(1) * tinh_Ic(qj(1), mc1, mc2, ac, bc)
Jmc = Jmc + qj(1) * tinh_Jc(qj(1), mc1, mc2, ac, bc)
Call khong_sang(qj(0), mc1, mc2, ac, bc) 'nhiet do cao
Imc = Imc + qj(0) * tinh_Ic(qj(0), mc1, mc2, ac, bc)
Jmc = Jmc + qj(0) * tinh_Jc(qj(0), mc1, mc2, ac, bc)
Else
Imc = 0
Jmc = 0
Call sang_manh(qj(4), mc1, mc2, ac, bc) 'nhiet do rat lanh
Imc = Imc + qj(4) * tinh_Ic(qj(4), mc1, mc2, ac, bc)
Jmc = Jmc + qj(4) * tinh_Jc(qj(4), mc1, mc2, ac, bc)
Call sang_vua(qj(3), mc1, mc2, ac, bc) 'nhiet do lanh
Imc = Imc + qj(3) * tinh_Ic(qj(3), mc1, mc2, ac, bc)
Jmc = Jmc + qj(3) * tinh_Jc(qj(3), mc1, mc2, ac, bc)
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
48
Call sang_it(qj(2), mc1, mc2, ac, bc) 'nhiet do hoi lanh
Imc = Imc + qj(2) * tinh_Ic(qj(2), mc1, mc2, ac, bc)
Jmc = Jmc + qj(2) * tinh_Jc(qj(2), mc1, mc2, ac, bc)
Call khong_sang(qj(1), mc1, mc2, ac, bc) 'nhiet do vua
Imc = Imc + qj(1) * tinh_Ic(qj(1), mc1, mc2, ac, bc)
Jmc = Jmc + qj(1) * tinh_Jc(qj(1), mc1, mc2, ac, bc)
Call khong_sang(qj(0), mc1, mc2, ac, bc) 'nhiet do cao
Imc = Imc + qj(0) * tinh_Ic(qj(0), mc1, mc2, ac, bc)
Jmc = Jmc + qj(0) * tinh_Jc(qj(0), mc1, mc2, ac, bc)
ti = Imc
tj = Jmc
If Imc = 0 Then
a0 = 0
Else : a0 = Jmc / Imc
End If
End If
Labelic.Text = Imc
Labeljc.Text = Jmc
End Sub
 Module điều khiển hoạt động của chế độ hoạt động tự động:
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
On Error GoTo loi
st = vcom.ReadExisting()
If (st.Length() >= 3) Then
st = st.Remove(2, (st.Length() - 2))
Label1.Text = st
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
49
Else
Label1.Text = st
End If
'----------------------
If Label1.Text = "" Then
'MsgBox("khong co du lieu")
Else
nhiet = CSng(Label1.Text)
End If
t0 = nhiet
tc0 = nhiet
Call tinh_v0()
Call tinh_a0()
Label7.Text = CInt(v0)
Label8.Text = CInt(a0)
Label18.Text = CInt((a0 / 255) * 100)
Label20.Text = CInt((v0 / 255) * 100)
bar.Value = CInt(nhiet)
If (nhiet > 35.5) Then
Timer3.Enabled = False
Timer4.Enabled = True 'lam mat
Else
Timer4.Enabled = False
Timer3.Enabled = True 'lam am
End If
If nhiet <= 17 Then
Label4.Visible = True
Timer5.Enabled = True
Else
Label4.Visible = False
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
50
Timer5.Enabled = False
End If
If nhiet >= 48 Then
Label3.Visible = True
Timer2.Enabled = True
Else
Label3.Visible = False
Timer2.Enabled = False
End If
If (18 <= nhiet) And (nhiet <= 47) Then
Label35.Visible = True
Else
Label35.Visible = False
End If
loi:
End Sub
 Module điều khiển chế độ hoạt động bằng tay của điều khiển đèn:
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
Dim tam As Single
On Error GoTo loi
st = vcom3.ReadExisting()
If (st.Length() >= 3) Then
st = st.Remove(2, (st.Length() - 2))
Label1.Text = st
Else
Label1.Text = st
End If
If Label1.Text = "" Then
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
51
Else
tam = CInt(Label1.Text)
End If
bar.Value = tam
loi:
End Sub
 Trên đây là một số đoạn code quan trọng trong chương trình phục vụ cho
việc điều khiển đối tượng quạt, việc điều khiển đối tượng đèn là hoàn toàn tương tự.
Để tinh giảm bớt độ dài của bài báo cáo, tôi không nêu thêm các đoạn code thuộc
vấn đề kết nối với thiết bị, giải quyết tương tranh... . Tuy nhiên việc kết nối và giải
quyết cũng chỉ đơn thuần mang tính công nghệ mà thôi.
4.3 Giới thiệu CODEVISION AVR:
CODEVISION AVR là phần mềm được thiết kế bởi hãng Pavel Haiduc
chuyên dùng để lập trình cho các loại Chip AVR. Ngoài CODEVISION AVR cũng
có một số phần mềm khác có tính năng tương tự nhưng đây CODEVISION vẫn là
sự lựa chọn phổ biến nhất bởi tính đơn giản, hiệu quả và dễ sử dụng.
- CODEVISION AVR cung cấp cho người dùng một Wizard để lựa chọn các
thông số kỹ thuật phù hợp với loại Chip mà minh đang sử dụng.
- Điểm quan trọng nhất của phần mềm này là nó cho phép người sử dụng có
thể dùng ngôn ngữ C để lập trình cho Chip thay thế cho các lập trình bằng hợp ngữ
trước đây.
- Mặc dù Chip AVR có hỗ trợ lập trình bằng ngôn ngữ C nhưng để nạp được
chương trình cho nó vẫn phải biên dịch thành file dạng hợp ngữ.
- Đây được xem là phần mềm được yêu thích nhất của các lập trình viên, kỹ
thuật viên ... làm việc với AVR.
- Sau đây tôi xin giới thiệu một số bước trong lập trình và nạp Chip:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
52
+) Giao diện lập trình:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
53
+) Biên dịch thành file Hex:
+) Thiết lập các thông số Chip và cổng nap:
+) Nạp Chip:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
54
+) Thiết lập các thông số cho liên lạc giữa Chip và máy tính:
+) Vµo Read -> ChipSignalture nÕu m¹ch n¹p nhËn chip th× tªn chip vµ tÇn sè
chip sÏ hiÖn trªn «:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
55
+) Cầu hình của dự án chứa chương trình:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
56
CHƯƠNG 5
GIỚI THIỆU THIẾT BỊ
VÀ CHƯƠNG TRÌNH
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
57
5.1 Giới thiệu thiết bị:
- Đây là thiết bị sau khi xây dựng hoàn chỉnh: các module được lắp đặt lên
mạch và kết nối với nhau thành công.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
58
- Đây là mạch điện lúc được cấp nguồn và hoạt động:
Nhiệt độ hiện lên trên màn hình là 280
C.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
59
 Đây là mạch điện khi hoạt động ở chế độ tự động:
- Trên màn hình đang hiển thị:
- Nhiệt độ 290
C.
- Cường độ sáng: 125 đv.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
60
 Đây là mạch điện lúc hoạt động ở chế độ điều khiển làm mát bằng tay
- Quạt đang chạy với cường độ là 255 đv_ cường độ tối đa.
- Đèn không hoạt động ở chế độ này
- Nhiệt độ :290
C.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
61
 Đây là mạch điện lúc hoạt động ở chế độ điều khiển làm ấm bằng tay
- Đèn đang sáng với cường độ là 255 đv_ cường độ tối đa.
- Quạt không hoạt động ở chế độ này.
- Nhiệt độ :290
C.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
62
 Thiết bị cảnh báo khi nhiệt độ lên quá cao:
- Nhiệt độ hiện tại là 530
C_nhiệt độ rất cao trong lò.
- Đèn LED màu đỏ nháy sáng liên tục để cảnh báo với người sử dụng.
- Quạt chạy với cường độ tối đa 255đv.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
63
5.2 Giới thiệu chương trình:
- Giao diện chính của chương trình:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
64
- Cửa sổ chương trình hoạt động ở chế độ điều khiển tự động:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
65
- Cửa sổ chương trình hoạt động ở chế độ điều khiển làm mát bằng tay:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
66
- Cửa sổ chương trình hoạt động ở chế độ điều khiển làm ấm bằng tay:
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
67
V.3 Kết luận :
 Đồ án này đã ứng dụng được lý thuyết logic mờ trong điều khiển tự động
thiết bị. Ngoài ra còn áp dụng một số kỹ thuật khác về phần cứng như:
- Kỹ thuật vi xử lý.
- Kỹ thuật truyền thông nối tiếp.
- Kỹ thuật lập trình hệ thống.
 So với lần thực tập chuyên nghành lần trước đồ án lần này đã có một số cải
tiến như:
- Đã xây dựng và sử dụng được hai bộ điều khiển mờ.
- Điều khiển được tốc độ của quạt thay vì chỉ bật hoặc tắt như trước.
- Điều khiển được cường độ sáng của đèn.
Bên cạnh những vấn đề đã giải quyết được vẫn còn một số điểm chưa xử lý
được như:
- Chưa thể tự động nạp lại chương trình mỗi khi khởi động lại máy tính.
- Thiết kế mạch còn khá rườm rà thiếu tính thẩm mỹ và gọn gàng.
- Cảm biến nhiệt chưa thật sự nhạy, cảm ứng nhiệt với môi trường còn chậm.
Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh.
68
Tài liệu tham khảo:
Bùi Công Cường - Nguyễn Doãn Phước, Hệ mờ - mạng nơron và ứng dụng,
Nhà xuất bản khoa học và kỹ thuật, 2006.
TS Nguyễn Đình Thuân , Bài giảng Hệ Chuyên Gia, Đại học Nha Trang,
2007.
Nguyễn Thúy Vân, Kỹ thuật Vi xử lý, Nhà xuất bản giao dục, 2002.
Ngô Diên Tập, Lập trình ghép nối máy tính trong Windows, Nhà xuất bản
khoa học và kỹ thuật, 2002.
Ngô Diên Tập, Đo lường và điều khiển băn máy tính, Nhà xuất bản khoa học
và kỹ thuật, 2002.
Nguyễn Thiên Bằng - Nguyễn Phương Lan, Lập trình VB2005, Nhà xuất bản
lao động xã hội, 2007.

More Related Content

Similar to Điều khiển nhiệt độ trong lò ấp trứng ứng dụng logic mờ, Bùi Quang Vinh.pdf

Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...
Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...
Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...Man_Ebook
 
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdf
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdfMột số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdf
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdfMan_Ebook
 
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdf
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdfĐiều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdf
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdfMan_Ebook
 
bai giang Matlab
bai giang Matlabbai giang Matlab
bai giang Matlableoteo113
 
Tìm hiểu về phổ năng lượng của một số phân tử
Tìm hiểu về phổ năng lượng của một số phân tửTìm hiểu về phổ năng lượng của một số phân tử
Tìm hiểu về phổ năng lượng của một số phân tửTÀI LIỆU NGÀNH MAY
 
D_an_thit_k_diu_chnh_mc_nc_trong.docx
D_an_thit_k_diu_chnh_mc_nc_trong.docxD_an_thit_k_diu_chnh_mc_nc_trong.docx
D_an_thit_k_diu_chnh_mc_nc_trong.docxChulQj
 
Giải tích các hàm nhiều biến.pdf
Giải tích các hàm nhiều biến.pdfGiải tích các hàm nhiều biến.pdf
Giải tích các hàm nhiều biến.pdfMan_Ebook
 
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...https://www.facebook.com/garmentspace
 

Similar to Điều khiển nhiệt độ trong lò ấp trứng ứng dụng logic mờ, Bùi Quang Vinh.pdf (20)

Quy luật biên phi tuyến và nguồn trong các quá trình truyền nhiệt
Quy luật biên phi tuyến và nguồn trong các quá trình truyền nhiệtQuy luật biên phi tuyến và nguồn trong các quá trình truyền nhiệt
Quy luật biên phi tuyến và nguồn trong các quá trình truyền nhiệt
 
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAYĐề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
Đề tài: Phương pháp giải một số lớp mô hình cân bằng, HAY
 
Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...
Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...
Điều khiển phân quyền trong thời gian hữu hạn cho hệ tuyến tính quy mô lớn vớ...
 
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdf
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdfMột số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdf
Một số lớp bài toán tối ưu không lồi, Thuật toán và ứng dụng.pdf
 
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdf
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdfĐiều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdf
Điều khiển H trong thời gian hữu hạn của hệ nơ ron thần kinh phân thứ.pdf
 
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trìnhĐề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
Đề tài: Nguyên lý biến phân thường dùng trong cơ học công trình
 
bai giang Matlab
bai giang Matlabbai giang Matlab
bai giang Matlab
 
Tìm hiểu về phổ năng lượng của một số phân tử
Tìm hiểu về phổ năng lượng của một số phân tửTìm hiểu về phổ năng lượng của một số phân tử
Tìm hiểu về phổ năng lượng của một số phân tử
 
Về Một Số Lớp Bất Phương Trình Hàm.doc
Về Một Số Lớp Bất Phương Trình Hàm.docVề Một Số Lớp Bất Phương Trình Hàm.doc
Về Một Số Lớp Bất Phương Trình Hàm.doc
 
D_an_thit_k_diu_chnh_mc_nc_trong.docx
D_an_thit_k_diu_chnh_mc_nc_trong.docxD_an_thit_k_diu_chnh_mc_nc_trong.docx
D_an_thit_k_diu_chnh_mc_nc_trong.docx
 
Luận văn: Về các nguyên lý biến phân, HAY, 9đ
Luận văn: Về các nguyên lý biến phân, HAY, 9đLuận văn: Về các nguyên lý biến phân, HAY, 9đ
Luận văn: Về các nguyên lý biến phân, HAY, 9đ
 
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đLuận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
Luận văn: Giải số phương trình vi phân đại số bằng đa bước, 9đ
 
Hệ Động Lực Học Dạng Phương Trình Sai Phân Bậc Nhất.doc
Hệ Động Lực Học Dạng Phương Trình Sai Phân Bậc Nhất.docHệ Động Lực Học Dạng Phương Trình Sai Phân Bậc Nhất.doc
Hệ Động Lực Học Dạng Phương Trình Sai Phân Bậc Nhất.doc
 
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộngĐề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
Đề tài: Phương pháp giải bài toán cân bằng có tính lồi suy rộng
 
Luận văn: Dạy các phương trình và bất phương trình vô tỉ lớp 10
Luận văn: Dạy các phương trình và bất phương trình vô tỉ lớp 10Luận văn: Dạy các phương trình và bất phương trình vô tỉ lớp 10
Luận văn: Dạy các phương trình và bất phương trình vô tỉ lớp 10
 
Giải tích các hàm nhiều biến.pdf
Giải tích các hàm nhiều biến.pdfGiải tích các hàm nhiều biến.pdf
Giải tích các hàm nhiều biến.pdf
 
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...
Luận án tiến sĩ toán học ngưỡng chính tắc của hàm chỉnh hình và hàm đa điều h...
 
Luận văn: Bổ chính Susy-Qcd trong quá trình hủy cặp e + e - - Gửi miễn phí qu...
Luận văn: Bổ chính Susy-Qcd trong quá trình hủy cặp e + e - - Gửi miễn phí qu...Luận văn: Bổ chính Susy-Qcd trong quá trình hủy cặp e + e - - Gửi miễn phí qu...
Luận văn: Bổ chính Susy-Qcd trong quá trình hủy cặp e + e - - Gửi miễn phí qu...
 
Đề tài: Bổ chính susy-qcd cho sinh cặp squark trong hủy cặp e + e -
Đề tài: Bổ chính susy-qcd cho sinh cặp squark trong hủy cặp e + e -Đề tài: Bổ chính susy-qcd cho sinh cặp squark trong hủy cặp e + e -
Đề tài: Bổ chính susy-qcd cho sinh cặp squark trong hủy cặp e + e -
 
Đề tài: Bài toán giá trị đầu cho phương trình vi phân đạo hàm riêng cấp hai t...
Đề tài: Bài toán giá trị đầu cho phương trình vi phân đạo hàm riêng cấp hai t...Đề tài: Bài toán giá trị đầu cho phương trình vi phân đạo hàm riêng cấp hai t...
Đề tài: Bài toán giá trị đầu cho phương trình vi phân đạo hàm riêng cấp hai t...
 

More from Man_Ebook

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfMan_Ebook
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docMan_Ebook
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfMan_Ebook
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfMan_Ebook
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfMan_Ebook
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfMan_Ebook
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfMan_Ebook
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdfMan_Ebook
 

More from Man_Ebook (20)

BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdfBÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
BÀI GIẢNG MÔN HỌC CƠ SỞ NGÔN NGỮ, Dùng cho hệ Cao đẳng chuyên nghiệp.pdf
 
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.docTL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
TL Báo cáo Thực tập tại Nissan Đà Nẵng.doc
 
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdf
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdf
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdf
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdf
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdf
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
 

Recently uploaded

10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxnhungdt08102004
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...Nguyen Thanh Tu Collection
 
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNguyễn Đăng Quang
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Nguyen Thanh Tu Collection
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...ThunTrn734461
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa2353020138
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...hoangtuansinh1
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdftohoanggiabao81
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...Nguyen Thanh Tu Collection
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfhoangtuansinh1
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líDr K-OGN
 
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxChàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxendkay31
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhvanhathvc
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...Nguyen Thanh Tu Collection
 

Recently uploaded (19)

10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
10 ĐỀ KIỂM TRA + 6 ĐỀ ÔN TẬP CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO C...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
Sáng kiến Dạy học theo định hướng STEM một số chủ đề phần “vật sống”, Khoa họ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
 
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdfNQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
NQA Lợi ích Từ ISO và ESG Tăng Trưởng và Bền Vững ver01.pdf
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
 
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
QUẢN LÝ HOẠT ĐỘNG GIÁO DỤC KỸ NĂNG SỐNG CHO HỌC SINH CÁC TRƯỜNG TRUNG HỌC CƠ ...
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
 
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
Thong bao 337-DHPY (24.4.2024) thi sat hach Ngoai ngu dap ung Chuan dau ra do...
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdf
 
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
TỔNG HỢP ĐỀ THI CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN NĂM ...
 
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdfChuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
Chuong trinh dao tao Su pham Khoa hoc tu nhien, ma nganh - 7140247.pdf
 
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh líKiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
Kiểm tra chạy trạm lí thuyết giữa kì giải phẫu sinh lí
 
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptxChàm - Bệnh án (da liễu - bvdlct ctump) .pptx
Chàm - Bệnh án (da liễu - bvdlct ctump) .pptx
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
 

Điều khiển nhiệt độ trong lò ấp trứng ứng dụng logic mờ, Bùi Quang Vinh.pdf

  • 1. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 1 TRƯỜNG ĐẠI HỌC NHA TRANG KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN TỐT NGHIỆP Đề tài: Điều khiển nhiệt độ trong lò ấp trứng ứng dụng logic mờ. GVHD : Bùi Đức Dương. SVTH : Bùi Quang Vinh. MSSV : 46133133. Lớp : 46th 2. Nha Trang, tháng 8 năm 2008.
  • 2. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 2 Lời nói đầu: Ngày nay cùng với sự phát triển không ngừng của khoa học công nghệ, công nghệ thông tin (CNTT) cũng đã có những bước tiến nhanh đến kinh ngạc và ngày càng trở nên phổ biến rộng rãi trong cuộc sống thường ngày. Một trong số những lĩnh vực quan trọng mà CNTT đóng vai trò then chốt đó là lĩnh vực điều khiển mờ. Trong khoảng 20 năm nay, lý thuyết tập mờ đã ra đời và phát triển rất nhanh chóng và đã đặt nền tảng cho một logic toán học mới: logic mờ (fuzzy logic). Logic mờ tỏ ra rất phù hợp với những bài toán nảy sinh từ các hệ thống phức tạp trong thực tế đặc biệt là những suy luận giống như cách mà con người vẫn thường sử dụng. Đồ án này đã vận dụng logic mờ trong điều khiển nhiệt độ của lò ấp trứng gà. Dựa vào những tri thức cung cấp bởi những tài liệu chuyên ngành chăn nuôi và kinh nghiệm thực tế của những hộ chăn nuôi gà_tri thức chuyên gia_em đã xây dựng nên tập luật sử dụng trong hệ thống. Với sự trợ giúp của phần cứng_phần điện tử_em đã mô phỏng một cách cụ thể nguyên lý cũng như hoạt động thực tế của một bộ điều khiển mờ. Cuối cùng em xin chân thành cảm ơn thầy Bùi Đức Dương đã giúp đỡ em thực hiện đề tài này! Do nhiều hạn chế, nhất là về thời gian và kinh phí nên đồ án còn nhiều khiếm khuyết. Rất mong được sự góp ý của thầy cô để em có thể hoàn thiện hơn nữa đề tài này. Sinh viên thực hiện: Bùi Quang Vinh
  • 3. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 3 Mục lục: Lời nói đầu .......................................................................................................2 Mục lục .............................................................................................................3 Phần 1 : Tổng quan về logic mờ và điều khiển mờ…...………………........4 I.1 Tổng quan về logic mờ….................………………………………........4 I.1.1 Tập mờ………......….......……………………………….....................4 I.1.2 Logic mờ ............. ................................................................................4 I.2 Tổng quan về điều khiển mờ..................................................................5 I.2.1 Quá trình điều khiển với yếu tố mờ, không chắc chắn ..................5 I.2.2 Phương pháp điều khiển mờ………………………………….... .5 Phần 2 : Tổng quan về vi điều khiển AVR ATmega32................................. 6 II.1 Sơ đồ nguyên lý kiến trúc AVR………………………………….........6 II.2 Cấu trúc chân của ATmega32................................................................7 Phần 3 : Xây dựng hệ thống điều khiển nhiệt trong lò ấp trứng gà……....7 III.1 Xây dựng nguyên lý xử lý bài toán……………………………….......7 III.1.1 Mờ hóa………………………………………………….. .....8 III.1.2 Lập luận mờ……………………………………………........9 III.1.3 Giải mờ…………………………………………………......10 III.2 Thiết kế phần cứng..............................................................................10 III.2.2 Sơ đồ nguyên lý………………………………………….....10 III.2.2.1 Module ATmega32................................................................10 III.2.2.2 Module RS232…………………………………................11 III.2.3 Sơ đồ chi tiết……………………………… ……………......11 III.2.3.1 Module ATmega32……………………......………......11 III.2.3.2 Module RS232……………………………......…….....12 III.2.3 3 Giới thiệu linh kiện……………………………......…..13 III.3 Xây dựng phần mềm: III.1 Giới thiệu một số đoạn mã quan trọng trong chương trình…..13 IV/ Giới thiệu thiết bị và chương trình………………………………….....14 IV.1 Giới thiêu thiết bị…………………………………………................14 IV.2 Giới thiệu chương trình……………………………………...............15 IV.3 Kết luận………………………………………...................................16 Tài liệu than khảo……………………………………………………….......17
  • 4. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 4 CHƯƠNG 1 TỔNG QUAN VỀ LOGIC MỜ VÀ ĐIỀU KHIỂN MỜ.
  • 5. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 5 1.1 Tổng quan về logic mờ : 1.1.1 Tập mờ : Logic mờ được xây dựng dựa vào cơ sở giá trị gần đúng, giá trị này nằm trong khoảng giữa chân trị False và True. Lý tuyết này được giáo sư Lotfi Zadef giới thiệu vào những năm 1960, nội dung của nó tương tự cách nói không chắc chắn trong ngôn ngữ thường ngày. - Theo ông, lý thuyết mờ không chỉ là một lý thuyết riêng lẻ mà chúng ta có thể dùng khái niệm fuzzy cho mọi lý thuyết khác từ các thuyết về khái niệm rời rạc đến liên tục. - Khái niệm logic mờ gắn bó chặc chẽ với khái niệm tập mờ.  Tập rõ (crisp set) : một tập hợp A là tập rõ, một phần tử x có thể có x € A hoặc x € A. Để mô tả khái niệm thuộc về, ta có tể sử dụng hàm µ. Nếu x € A thì µA(x)=1, nếu x € A thì µA(x)=0. Ví dụ: A = tập hợp sinh viên của trường Đại Học Nha Trang.  Tập mờ (fuzzy set): khác với tập rõ, khái niệm thuộc về được mở rộng để phản ánh mức độ x là phần tử của A. Đặc trưng cho tập mờ, người ta dùng hàm thành viên_membership function_ µA. Ví dụ: A = tập hợp sinh viên giỏi tin của trường Đại Học Nha Trang. -Một tập con U của tập S có thể được định nghĩa như một ánh xạ từ những phần tử của S vào tập {0,1}. Phép ánh xạ này có thể được xem như một tập hợp mà các phần tử của nó là các cặp có thứ tự, mỗi cặp có thứ tự này tương ứng với mỗi một phần tử của tập S. Phần tử đầu tiên (x) của cặp này chính là một phần tử của S, phần tử thứ hai chính là một phần tử của tập {0,1}. +) Giá trị 0 thể hiện ý nghĩa x không thuộc U. +) Giá trị 1 thể hiện ý nghĩa x thuộc U. -Tương tự như trên, một tập F là tập con của S được định nghĩa bằng phép ánh xạ các phần tử của S vào tập {0,1} và hình thành các cặp số có thứ tự. Phần tử đầu tiên của cặp số (x) là một phần tử trong S, phần tử thứ hai của cặp số (y) nằm trong khoảng [0,1] thể hiện mức độ x € F.
  • 6. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 6 - Để tính toán phần tử thứ hai (y) của cặp số_thể hiện mức độ x € F_người ta dùng hàm thành viên y= µF(x) . Hàm này cho giá trị càng gần 1 khi mức độ x thuộc F càng cao và ngược lại -Tập S được gọi là tập vũ trụ của tập con F. Ví dụ: Cho tập vũ trụ U{ tập những người tham gia khảo sát}. Hãy tìm tập TALL là tập những người cao. Hàm thành viên: µTALL(x) { 0 ; height(x) < 5ft 1 ; height(x) >7ft (height(x)-5)/2 ; 5ft <= height() <=7ft } Ta được kết quả như sau: Người Cao µTALL(x) Billy 3' 2" 0.00 Yoke 5' 5" 0.21 Drew 5' 9" 0.38 Erik 5' 10" 0.42 Mark 6' 1" 0.54 Kareem 7' 2" 1.00 Từ bảng trên ta có mức độ phần tử Erik thuộc vào tập TALL là 0.42. Định nghĩa tập mờ (L.Zadeh _1965): A là tập mờ trên tập vũ trụ U được xác định bởi hàm: µA: U  [0,1]. µA là hàm thuộc hay hàm thành viên (membership function). µA(x) là mức độ thuộc của phần tử x vào tập mờ A. 1.1.2. Logic mờ : Logic mờ là kết quả suy rộng của logic toán học cổ điển, khái niệm logic mờ gắn bó chặt chẽ với khái niệm tập mờ đã nói ở trên. Khái niệm fuzzy logic được hiểu thông qua định nghĩa về fuzzy set và các phép toán cơ bản của nó.
  • 7. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 7 1.1.2.a. Các phép toán cơ bản của logic mờ : Cho 3 tập mờ X,Y,Z với các hàm thành viên tương ứng µX(a), µY(a), µZ(a)  Phép phủ định: Z=not(X) : µZ(a)=1- µX(a).  Phép giao (hội): Z= X ∩ Y : µZ(a)= Min (µX(a), µY(a)).  Phép hợp (tuyển): Z=X U Y : µZ(a)=Max (µX(a), µY(a)). Ta hoàn toàn có thể nhận thấy: nếu đặt các giá trị 0 và 1 vào các biểu thức trên ta sẽ nhận được các giá trị giống như khi ta dùng luật logic thông thường, điều này chứng tỏ logic mờ không mâu thuẩn với logic truyền thống mà đó là sự mở rộng các tập luật khô cứng thành các luật mới uyển chuyển hơn. Vi dụ: -Cho tập mờ TALL (ví dụ trên). -Cho tập mờ OLD(già) với hàm thành viên như sau: old (x) = { 0 ; age(x) < 18 yr. (age(x)-18 yr.)/42 yr ; 18 yr. <= age(x) <= 60 yr. 1 ; if age(x) > 60 yr. } -Tập luật: a = X is TALL and X is OLD. b = X is TALL or X is OLD. c = not (X is TALL). Bảng kết quả: height age X is TALL X is OLD a b c ------------------------------------------------------------------------ 3' 2" 65 0.00 1.00 0.00 1.00 1.00 5' 5" 30 0.21 0.29 0.21 0.29 0.79 5' 9" 27 0.38 0.21 0.21 0.38 0.62 5' 10" 32 0.42 0.33 0.33 0.42 0.58 6' 1" 31 0.54 0.31 0.31 0.54 0.46 7' 2" 45 1.00 0.64 0.64 1.00 0.00 3' 4" 4 0.00 0.00 0.00 0.00 1.00
  • 8. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 8 1.1.2.b. Biến ngôn ngữ (linguistics variable) : Logic mờ liên quan đến lập luận trên các thuật ngữ mờ và mơ hồ trong ngôn ngữ tự nhiên của con người. Biến nhận các từ trong ngôn ngữ tự nhiên làm giá trị gọi là biến ngôn ngữ. Biến ngôn ngữ được xác định bởi bộ bốn (x, T, U, M):  x là tên biến.  T là tập các từ (các giá trị ngôn ngữ) mà x có thể nhận.  U là miền giá trị mà x có thể nhận.  M là luật ngữ nghĩa, ứng với mỗi từ t€T với một tập mờ A. Ví dụ: M=Phụ nữ tuổi trung niên thì sức khỏe yếu. x= biến ngôn ngữ ”tuổi, sức khỏe”. T= tập các từ “trung niên, yếu”. U=miền giá trị của “tuổi” là [0..150 năm]. 1.2. Tổng quan về điều khiển mờ : Những khái niệm trừu tượng của logic mờ đã được cụ thể hóa và ứng dụng thông qua những sản phẩm thông dụng trong cuộc sống thường ngày như: nồi cơm điện, máy giặt, lò vi sóng, tủ lạnh.... Sự phát triển nhanh chóng của ngành điều khiển mờ ( fuzzy control) là do những yếu tố sau: - Trên cơ sở suy luận mờ, nguyên lý điều khiển mờ đã cho phép con người tự động hóa kinh nghiệm điều khiển của mình cho một quá trình, một thiết bị..., tạo được sự yên tâm cho họ như họ được chính tay điều khiển. - Bộ điều khiển có cấu trúc đơn giản hơn rất nhiều so với những bộ điều khiển kinh điển khác có cùng chức năng. - Những cải tiến nhanh chóng của kỹ thuật vi xử lý đã làm một cầu nối không thể thiếu giữa kết quả nghiên cứu lý thuyết và thực tế ứng dụng. 1.2.1 Nguyên lý làm việc : Bộ điều khiển mờ là một bộ điều khiển làm việc theo nguyên tắc tự động hóa những kinh nghiệm điều khiển của con người. Những kinh nghiệm này phải được đúc kết lại thành luật hợp thành gồm nhiều mệnh đề hợp thành với cấu trúc chung: if A=Ai then B=Bj A, B là biến ngôn ngữ. Ai , Bj là giá trị.
  • 9. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 9 - Mệnh đề hợp thành là nguyên tắc điều khiển được xây dựng từ những kinh nghiệm (hoặc ý kiến chuyên gia) trong thực tế. Luật hợp thành là tập hợp các mệnh đề hợp thành đó. - Mô hình tổng quát của hệ thống điều khiển mờ: - Các nhóm bộ điều khiển : +) Bộ điều khiển SISO: một đầu vào và một đầu ra. +) Bộ điều khiển SIMO: một đầu vào và nhiều đầu ra. +) Bộ điều khiển MISO: nhiều đầu vào và một đầu ra. +) Bộ điều khiển MIMO: nhiều đầu vào và một đầu ra. - Cấu trúc của một bộ điều khiển mờ: gồm có 3 khâu chính +) Khâu mờ hóa: có nhiệm vụ chuyển đổi một giá trị rõ ở đầu vào u0 thành vector ui cho mệnh đề hợp thành thứ i. +) Khâu lập luận mờ: xử lý các vector ui và cho ra giá trị mờ R với hàm thuộc µR(y) của biến ngôn ngữ đầu ra. +) Khâu giải mờ: chuyển đổi tập mờ µR(y) thành giá trị rõ y0 đầu ra cho đối tượng. Mô hình cấu trúc bộ điều khiển mờ: Đối tượng điều khiển (Object) Bộ điều khiển (Controller) Cảm biến (Sensor) Mờ hóa Lập luận mờ. Giải mờ. Vào u0 Ra y0
  • 10. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 10 1.2.2 Quá trình điều khiển với yếu tố mờ, không chắc chắn : Các phương pháp điều khiển truyền thống đòi hỏi người ta phải biết rõ bản chất của đối tượng cần điều khiển. Tuy nhiên trong thực tế, ngoài các đối tượng cần điều khiển ra còn có rất nhiều đối tượng gây nhiễu khác do đó người thiết kế rất khó xác định các đặc trưng. Vì đối tượng điều khiển là một hệ phức tạp và không thể biểu thị bằng các mô hình toán nên người “chuyên gia” điều hành hệ thống chỉ có thể quan sát thông tin vào để phán đoán hành vi của hệ thống. Nhận thức này được thâu tóm trong một tập các mệnh đề if…then (hay các luật) với các biến vào và ra. Nói chung các phương pháp điều khiển mờ đều gắn chặc với lập luận mờ và gồm các đặc điểm sau:  Chỉ dựa vào thông tin vào ra quan sát được trên đối tượng cần điều khiển.  Mô hình định tính dựa trên ngôn ngữ.  Giảm độ phức tạp tính toán nhờ mô hình định tính.  Miền ứng dụng rộng lớn đa dạng. 1.2.3 Các phương pháp điều khiển mờ thông dụng : a) Phương pháp xây dựng bộ điều khiển mờ dựa trên luật : Ý tưởng của phương pháp này được đề xuất vào năm 1975 chủ yếu dựa vào việc xây dựng một cách thức lập luận mờ và lượng hóa các khái niệm mờ phù hợp. Đặc trưng của phương pháp này là tập hợp các luật (tri thức) được xây dựng dựa vào tri thức của các chuyên gia, tức là tập luật là sự mô phỏng các tình huống đáp ứng của các chuyên gia trong quá trình thao tác điều khiển. Phương pháp này có ưu điểm này là đơn giản, nhưng cũng có các nhược điểm như độ thích nghi kém, khó phát biểu tri thức chuyên gia dưới dạng luật. b) Phương pháp xây dựng bộ điều khiển mờ dựa trên mô hình : Nội dung của phương pháp này như sau: - Xây dựng mô hình quan hệ mờ dựa trên quan sát input/output. - Xây dựng thuật toán cho phép bộ điều khiển lựa chọn thao tác điều hành tốt nhất. - Có thể sử dụng mô hình tự học hay các mô hình lai giữa mô hình mờ và mô hình toán học.
  • 11. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 11 - Ưu điểm: rất trực quan và dễ quan sát, giúp người thiết kế hệ thống dễ dàng nắm bắt các cấu trúc và thành phần cua bộ điều khiển. c) Phương pháp xây dựng bộ điều khiển thông minh dựa trên tri thức và logic mờ: Trong thực tế điều khiển người ta thường gặp những môi trường không thể thu được các dữ liệu chính xác, không mô tả được cụ thể trạng thái.... trong những trường hợp như vậy cần phải xây dựng các bộ điều khiển thông minh. Đặc điểm của phương pháp như sau : - Có khả năng sử dụng nhiều giải thuật điều khiển khác nhau, đánh giá được chiến lược điều khiển nào thích ứng nhất. Việc đánh giá này dựa vào kỹ thuật tập mờ và logic mờ. - Có khả năng đánh giá và duy trì trạng thái gần tối ưu và đảm bảo độ tin cậy, ngay cả khi một vài yếu tố của thiết bị điều khiển bị hỏng nó cũng có thể cấu hình lại giải thuật đó hay chuyển sang một giải thuật khác thích ứng hơn. - Có một cơ sở tri thức và kinh nghiệm đối với quá trình điều khiển cùng với những kiến thức dạng luật mà các giải thuật sẽ sử dụng trong quá trình điều khiển .
  • 12. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 12 CHƯƠNG 2 TỔNG QUAN VỀ VI ĐIỀU KHIỂN AVR ATEMEGA.
  • 13. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 13 Vi điều khiển AVR thuộc họ vi điều khiển Atmel, nó là họ vi điều khiển mới trên thị trường cũng như đối với người sử dụng.. Ngoài các tính năng như các họ VĐK khác, nó còn tích hợp nhiều tính năng mới rất tiện lợi cho người thiết kế và lập trình. Sự ra đời của AVR bắt nguồn từ yêu cầu thực tế là hầu hết khi cần lập trình cho vi điều khiển, chúng ta thường dùng những ngôn ngữ bậc cao HLL (Hight Level Language) để lập trình ngay cả với loại chip xử lí 8 bit trong đó ngôn ngữ C là ngôn ngữ phổ biến nhất. 2.1 Phân loại AVR và các đặc điểm chính: - Phân loại AVR: +) AT90S8535: Không có lệnh nhân hoặc chia trên thanh ghi. +) ATMEGA 8, 16, 32 (AVR loại 8 bit, 16 bit, 32 bit): Là loại AVR tốc độ cao, tích hợp sẵn ADC 10 bit. +) AVR tích hợp sẵn LCD driver : Atmega169, 329. +) AVR có tích hợp SC (Stage Controller): AT90PWM thường dùng trong các ứng dụng điều khiển động cơ hay chiếu sáng nên còn gọi là lighting AVR. +) Attiny11, 12, 15: AVR loại nhỏ. - Đặc điểm chính: +) Kiến trúc RISC(Cã nghÜa lµ m¸y tÝnh dïng tËp lÖnh rót gän, bé vi xö lý kiÓu nµy thùc hiÖn Ýt lÖnh h¬n nh÷ng bé vi xö lý kh¸c) với hầu hết các lệnh có chiều dài cố định, truy nhập bộ nhớ nạp – lưu trữ và 32 thanh ghi đa năng. +) Có nhiều bộ phận ngoại vi ngay trên chip, bao gồm: Cổng vào/ra số, bộ biến đổi ADC, bộ nhớ EEFROM, bộ định thời, bộ điều chế độ rộng xung (PWM),.. +) Hầu hết các lệnh đều thực hiện trong một chu kỳ xung nhịp. +) Hoạt động với chu kỳ xung nhịp cao, có thể lên đến 20 MHz tuỳ thuộc từng loại chip cụ thể. +) Bộ nhớ chương trình vµ bộ nhớ dữ liệu được tích hợp ngay trên chip. +) Khả năng lập trình được trong hệ thống, có thể lập trình được ngay khi đang được cấp nguồn trên bản mạch không cần phải nhấc chip ra khỏi bản mạch. +) Hỗ trợ cho việc lập trình bằng ngôn ngữ bậc cao – ngôn ngữ C. - Cốt lõi của AVR là sự kết hợp tập lệnh đầy đủ với các thanh ghi đa năng 32 bit. Tất cả các thanh ghi 32 bit này liên kết trực tiếp với khối xử lý số học và logic (ALU) cho phép 2 thanh ghi độc lập được truy cập trong một lệnh đơn trong 1 chu
  • 14. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 14 kỳ đồng hồ. Kết quả là tốc độ nhanh gấp 10 lần các bộ vi điều khiển CISC(Complex Instruction Set Computer : máy tính với tập lệnh phức tạp). Một loại kiến trúc của bộ xử lí được đặc trưng bởi tính chất là các lệnh có độ dài khác nhau (không cố định) , thường là một số nhỏ các chế độ đa địa chỉ và thanh ghi) . - Với các tính năng đã nêu, chế độ nghỉ (Idle) CPU trong khi cho phép bộ truyền tin nối tiếp đồng bộ USART, giao tiếp 2 dây, chuyển đổi A/D, SRAM, bộ đếm, bộ định thời, cổng SPI và hệ thống các ngắt vẫn hoạt động. Chế độ Power- down lưu giữ nội dung của các thanh ghi nhưng làm đông lạnh bộ tạo dao động, thoát khỏi các chức năng của chip cho đến khi có ngắt ngoài hoặc là reset phần cứng. Chế độ Power-save đồng hồ đồng bộ tiếp tục chạy cho phép chương trình sử dụng giữ được đồng bộ thời gian nhưng các thiết bị còn lại là ngủ. - Để tối đa hoá hiệu năng tính năng và song song, AVR sử dụng kiến trúc với bộ nhớ riêng biệt và các BUS cho chương trình và dữ liệu. Các câu lệnh trong bộ nhớ chương trình được hoạt với một đường ống lệnh mức đơn. Trong khi một lênh đang thực hiện, lệnh tiếp theo sẽ được nạp trước vào từ bộ nhớ chương trình. Điều này làm cho các lệnh được thực hiện trong mọi chu kỳ đồng hồ. Bộ nhớ chương trình là bộ nhớ In-System Reprogrammable Flash. - Flash memory : Bé nhí flash, lµ mét lo¹i bé nhí sử dụng các chíp NAND (tích hợp nhiều transitor lên một tấm bán dẫn), các chíp này có kích thước nhỏ, tốc độ đọc/ghi cao, dung lượng lớn - AVR cung cấp 1 vài nguồn ngắt khác nhau. Các ngắt này và vector reset riêng biệt có vector chương trình riêng biệt nằm trong không gian nhớ chương trình. Tất cả các ngắt được chỉ định bởi các bit cho phép riêng biệt mà các bit này phải được ghi mức logic 1 cùng với bit cho phép ngắt toàn cục trong thanh ghi trạng thái để cho phép ngắt. Phụ thuộc vào giá trị PC, các ngắt này phải được tự động loại bỏ khi các bit Boot Lock - BLB02 or BLB12 - được lập trình. Yếu tố này cải thiện độ an toàn phần mềm.
  • 15. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 15 2.2 Sơ đồ nguyên lý kiến trúc AVR : - Sơ đồ cấu trúc AVR : Các thành phần cơ bản: - ALU : Đơn vị xử lý số học và logic. Các toán tử của ALU được chia làm 3 loại chính: Số học, logic, và xử lý bit. Một số phép xử lý của kiến trúc này cũng cung cấp bộ nhân số có dấu và không có dấu và dạng phân số. - Data SRAM : Bộ nhớ dữ liệu. - EEPROM : Lµ lo¹i ROM cã thÓ xo¸ ®­îc bằng điện sau đó ghi lại mà không cần lấy ra. - DATA BUS – 8Bit : §­êng truyÒn d÷ liÖu 8Bit. - I/O Lines : §­êng vµo ra tÝn hiÖu. - 32 x 8 Gneral Purpose Registers : 32 thanh ghi ®a n¨ng 8 Bit. - Status and control : Khèi nhËn biÕt tr¹ng th¸i vµ ®iÒu khiÓn.
  • 16. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 16 - Program counter : Bé ®Õm ch­¬ng tr×nh. - Flash program memory : Bé nhí flash, tốc độ đọc/ghi cao, dung lượng lớn. - Intruction register/ decoder : thanh ghi lÖnh - IntErrupt unit: Bé xö lý ng¾t. - SPIunit: (Serial Peripheral Interface) mạch ghép nối ngoại vi nối tiếp, là mạch liªn kết dữ liệu nối tiếp đồng bộ cho phép bộ điều khiển truyền thông với các thiết bị ngoại vi. - Watchdog timer : là một bộ đếm có chức năng reset lại vi điều khiển khi xảy ra sự kiện tràn (overflow). - Analog comparator: bé so s¸nh tín hiệu t­¬ng tù I/O module1 -> I/O module n các module vào ra tín hiệu . - Status register: Thanh ghi trạng thái chứa thông tin về kết quả thưc hiện của hầu hết các lệnh số học. Các thông tin này có thể được sử dụng để điều khiển chương trình. Chú ý rằng các thanh ghi trạng thái được cập nhật sau tất cả các hoạt động của ALU. Trong nhiều trường hợp, điều này sẽ bỏ đi những cần thiết khi sử dụng câu lệnh so sánh chuyên dụng, kết quả nhanh hơn và đoạn chương trình ngắn gọn hơn. - I/O module1 -> I/O module n: Module vµo ra tÝn hiÖu. - Direct / Indirect addressing: §­êng ®Þa chØ truyÒn trùc tiÕp / gián tiếp. - Stack Pointer : Stack thường được sử dụng để chứa dữ liệu tạm thời, cho việc lưu trữ các biến địa phương và cho việc lưu trữ địa chỉ trở về sau khi gọi các thường trình và các ngắt. Thanh ghi con trỏ thường trỏ tới đỉnh của stack. Chú ý rằng stack được thực hiện khi tăng thêm từ địa chỉ cao đến địa chỉ thấp, điều này nói lên rằng khi thực hiện lệnh PUSH thì con trỏ sẽ tự động giảm. Con trỏ trỏ đến vùng ngăn xếp dữ liệu SRAM . - Không gian ngăn xếp trong SRAM phải được định nghĩa bằng chương trình trước khi bất cứ thường trình hoặc ngắt được thực hiện. Con trỏ ngăn xếp phải được set để trỏ tới địa chỉ trên $0100. Con trỏ ngăn xếp được giảm đi 1 khi dữ liệu được cất vào ngăn xếp và được giảm đi 2 khi cất địa chỉ trở về của thường trình hoặc ngắt. SP được tăng lên khi dữ liệu được lấy ra.
  • 17. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 17 2.3 Cấu trúc AVR ATmega16L : Vi xử lý được chọn sử dụng trong đồ án này là AVR Atemega16L . Với những tính năng rất tiện dụng cho lập trình và điều khiển, AVR Atemega16L đã được rất nhiều kỹ thuật viên tin học, chuyên viên cơ-điện tử, ... sử dụng. Sau đây là vài chi tiết quan trọng của nó. 2.3.1 Cấu trúc chân AVR Atemega16L : - §iÖn ¸p ho¹t ®éng : tõ 2.7 ®Õn 5.5VDC - VCC : CÊp nguån dương. - GND : Nèi ®Êt . - AVCC : Lµ ch©n cÊp ®iÖn cho cæng A(Port A ) vµ bé biÕn ®æi A/D. - AREF : Lµ ch©n tÝn hiÖu tham chiÕu Analog ( t­¬ng tù ) nèi vµo bé biÕn ®æi A/D. - PORT B : Tõ PB7 ®Õn PB0 lµ cæng I/O 8-bit hai chiÒu víi c¸c ®iÖn trë Pull-up bªn trong. - PORT C : Port C từ PC0 đến PC7 lµ cæng I/O 7-bit hai chiÒu víi c¸c ®iÖn trë Pull-up bªn trong (d­îc lùa chän cho mçi bit) . - PORT D : Port D từ PD0 đến PD7 lµ cæng I/O 8-bit hai chiÒuvíi c¸c ®iÖn trë Pull-Up bªn trong (®­îc lùa chän cho mçi bit.
  • 18. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 18 - PORT A : §Çu ra cña bé biÕn ®æi A/D. - XTAL1 & XTAL2 : Ch©n vµo ra cña th¹ch anh t¹o dao ®éng. 2.3.2 Một số đặc điểm kỹ thuật quan trọng của AVR Atemega16L: - Hiệu năng cao, tiêu thụ năng lượng ít. - Kiến trúc RISC - Reduce Instruction Set Computer (Cã nghÜa lµ m¸y tÝnh dïng tËp lÖnh rót gän, bé vi xö lý kiÓu nµy thùc hiÖn Ýt lÖnh h¬n nh÷ng bé vi xö lý kh¸c). - 131 câu lệnh, hầu hết các lệnh thực hiện trong một chu kỳ. - 32 thanh ghi 8-bit đa năng. - Tốc độc thực hiện lên tới 16 triệu lệnh trong 1 giây với tần số 16MHz. - Có 2 bộ nhân, mỗi bộ thực hiện trong thời gian 2 chu kỳ. - Các bộ nhớ chương trình và dữ liệu cố định. - 16 Kb bộ nhớ Flash có khả năng tự lập trình trong hệ thống. - Có thể thực hiện được 10.000 lần ghi/xoá. - Vùng mã Boot tuỳ chọn với những bit khoá độc lập. - Lập trình trên trong hệ thống bởi chương trình on-chip Boot. - Thao tác đọc trong khi ghi thực sự. - 512 bytes EEFROM.có thể thực hiện 100.000 lần ghi /xoá. - Lập trình Khoá an ninh phần mềm: giao diÖn nèi tiÕp ®ång bé ( chuÈn IEEE std.1149.1).Khi thùc hiÖn trao ®æi d÷ liÖu víi c¸c thiÕt bÞ t­¬ng thÝch th× khung d÷ liÖu 8Bit gi÷a 2 thiÕt bÞ ®­îc truyÒn ®ång bé (cïng xung nhÞp ®ång hå). - LËp tr×nh bé nhí Flash, EEPROM, ng¾t, kho¸ Bit th«ng qua giao diÖn JTAG. - 4 kênh PWM, 8 kênh ADC 10 bit. - Giao điện nối tiếp 2 dây hướng tới byte. - Bộ truyền tin nối tiếp USART khả trình. - Power-on Reset và dò Brown-out khả trình. - Bộ tạo dao động được định cỡ bên trong. - Các nguồn ngắt bên trong và bên ngoài. - 32 đường I/O khả trình. - Chế độ năng lượng thấp: <1 A khi điện áp 2.7V Atmega16L AVR được hỗ trợ bởi bộ chương trình đầy đủ và các tool(tiÖn Ých) để phát triển hệ thống, báo gồm: bộ biên dịch C, macro assemblers, program
  • 19. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 19 debugger/simulators(ch­¬ng tr×nh m« pháng), in-circuit emulators (m¹ch m« pháng) và evaluation kits(kit ph¸t triÓn). - Memories – bộ nhớ cña ATMEGA16L : +) Kiến trúc AVR có 2 không gian bộ nhớ chính bao gồm bộ nhớ chương trình và bộ nhớ dữ liệu. Thêm vào đó, Atmega16L có một bộ nhớ EEPROM để lưu trữ dữ liệu. Tất cả 3 không gian này là tuyến tính và như thường lệ. +) Atmega16L chứa 16K bytes bộ nhớ Flash có thể lập trình lại được nằm trong chip để chứa chương trình. Từ khi tất cả các lệnh của AVR là 16 hoặc 32 bit thì Flash được tổ chức thành 8Kx16. Vì lý do an toàn phần mềm nên bộ nhớ chương trình Flash được chia thành 2 vùng: Vùng nạp chương trình boot(ch­¬ng tr×nh khëi ®éng) và vùng chương trình ứng dụng. +) Bộ nhớ Flash có thể thực hiện ghi/xoá ít nhất 10.000 lần. Bộ đếm chương trình (PC) là 12 bit , nó có thể địa chỉ hoá được 4K bộ nhớ chương trình. Bản đồ bộ nhớ chương trình như hình vÏ:
  • 20. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 20 CHƯƠNG 3 XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN NHIỆT ĐỘ TRONG LÒ ẤP TRỨNG GÀ
  • 21. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 21 3.1 Xây dựng nguyên lý xử lý bài toán : Vấn đề đặt ra trong đồ án này như sau: không phụ thuộc vào nhiệt độ môi trường trong thời điểm hiện tại cũng như sự biến đổi nhiệt độ của các đối tượng khác trong lò ấp, ta phải điều chỉnh cường độ quạt và cường độ sáng của đèn sao cho nhiệt độ trong lò ấp luôn trong ổn định trong khoảng 35-360 C. Mô hình xử lý của bài toán : Dựa vào kinh nghiệm thực tế, ta có thể điều chỉnh nhiệt độ trong lò ấp bằng cách điều khiển hai đối tượng quạt và đèn tương ứng hai vấn đề cần giải quyết song song là làm mát và làm ấm như sau: - Vấn đề làm mát: +) Nếu nhiệt độ là thấp thì không quạt. +) Nếu nhiệt độ là vừa thì không quạt. +) Nếu nhiệt độ là hơi nóng thì quạt ít. +) Nếu nhiệt độ là nóng thì quạt vừa. +) Nếu nhiệt độ là rất nóng thì quạt lâu. - Vấn đề làm ấm: +) Nếu nhiệt độ là cao thì không sáng. +) Nếu nhiệt độ là vừa thì không sáng. +) Nếu nhiệt độ là hơi lạnh thì sáng ít. +) Nếu nhiệt độ là lạnh thì sáng vừa. +) Nếu nhiệt độ là rất lạnh thì sáng mạnh. Đối tượng điều khiển (Object) Desktop Bộ điều khiển (Controller) Cảm biến (Sensor)
  • 22. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 22 Như vậy, bộ điều khiển làm việc theo nguyên tắc tự động hóa những kinh nghiệm điều khiển của con người. Bộ điều khiển dùng trong đồ án này gồm hai bộ điều khiển theo kiểu SISO (Single Input, Single Output) dùng để điều khiển hai đối tượng là quạt và đèn. Nói cách khác ta sẽ tổ chức hai bộ điều khiển ảo SISO trên cùng một tài nguyên vật lý để điều khiển hai đối tượng trên theo kinh nghiệm của những chuyên gia trong lĩnh vực này. Sau đây chúng ta sẽ lần lượt đi vào từng khâu xử lý. 3.1.1 Mờ hóa : Nhiệm vụ của khâu này là chuyển đổi giá trị rõ input thành vectơ µi. Ta sẽ lần lượt tiến hành mờ hóa cho từng đối tượng quạt và đèn tương ứng hai vấn đề đặt ra ban đầu là làm mát và làm ấm. Khâu này được xem là khó nhất trong tất cả các khâu của quá trình xử lý.  Đối tượng quạt: - Xác định các biến ngôn ngữ: +)Với biến ngôn ngữ nhiệt độ ta có các tập mờ thấp, vừa , hơi nóng, nóng, rất nóng. Tương ứng một giá trị input (t) với lần lượt các tập mờ trên ta có các hàm sau: µthấp(t), µvừa(t), µhoinong(t), µnóng(t), µrấtnóng(t). +)Với biến ngôn ngữ kết luận xác định cường độ quạt ta có các tập mờ: không quạt, quạt tnhẹ, quạt vừa, quạt mạnh. Tương ứng một giá trị output (v) với lần lượt các tập mờ trên ta có các hàm sau:µk.quạt(v), µq.ít(v), µq.vừa(v), µq.lâu(v). Dựa vào kinh nghiệm của những người chăn nuôi gà lâu năm, các số liệu cụ thể đã được thu nhận để sử dụng trong việc xây dựng các hàm thành viên. - Ta xây dựng các hàm thành viên cho các tập mờ mát, vừa , hơi nóng, nóng, rất nóng (đơn vị tính bằng 0 C): µthấp(t) { 0 ; t >=35 µvừa(t) { 0; t=0 1; t<=17,5 0; t>=40 (35-t)/17.5; 17,5<t<35 1; 35<= t <=36 t/35; 0< t <35 40-t/4; 36< t < 40 } }
  • 23. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 23 µhoinong(t){0; t<=17,5 µnong(t){ 0; t<=35 0; t>=45 0; t>=47 1; 37<=t<=40 1; 41<= t <=44 (t-17,5)/19,5 ; 17,5< t <37 (t-35)/6; 35< t <41 (45-t)/5 ; 40< t <45 (47-t)/3; 44< t <47 } } µrấtnóng(t) { 0;t<=36 1;t>=45 (t-36)/9; 36< t <45 } Đây là đồ thị hóa các hàm thành viên mát, vừa , hơi nóng, nóng, rất nóng ở trên: µ(t) 1 mat vua hoinong nong ratnong 0 17,5 35 36 37 40 41 44 45 47 t(0 C) - Ta xây dựng các hàm thành viên cho các tập mờ không quạt, quạt nhẹ, quạt vừa, quạt mạnh. µk.quat(v){1; v=0 µq.nhẹ(v) {0; v< = 20 µq.vua(v){ 0; v<=50 0; v≠0 0; v>=200 0; v=255 } 1; 90<= t<=149 1; 150<=v<=199 (v-20)/70; 20< v <90 (v-50)/100; 50<v<150 (200-v)/51;149<v<200 (255-v)/56; 199<v<255 } }
  • 24. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 24 µq.mạnh(v){ 0; v<=100 1; 200<=v<=255 (v-100)/100; 100<v<200 } Đây là đồ thị hóa hàm thành viên không quạt, quạt nhẹ, quạt vừa, quạt mạnh: µ(v) 1 quạt nhẹ quạt vừa quạt mạnh khôngquạt 0 20 50 90 100 149 150 199 200 255 v(dv)  Đối tượng đèn: - Xác định các biến ngôn ngữ: +)Với biến ngôn ngữ nhiệt độ ta có các tập mờ cao, vừa, hơi lạnh, lạnh, rất lạnh. Tương ứng một giá trị input(tc) với lần lượt các tập mờ trên ta có các hàm sau: µcao(tc), µvừa(tc), µhơilạnh(tc), µlạnh(tc), µrấtlạnh(tc). +)Với biến ngôn ngữ kết luận xác định cường độ sáng ta có các tập mờ: không sáng, sáng ít, sáng vừa, sáng mạnh. Tương ứng một giá trị output(a) với lần lượt các tập mờ trên ta có các hàm sau:µk.sáng(a), µs.ít(a), µs.vừa(a), µs.mạnh(a). - Ta xây dựng các hàm thành viên cho các tập mờ cao, vừa, hơi lạnh, lạnh, rất lạnh (đơn vị tính bằng 0 C): µcao(tc) { 0 ; tc <=24 µvừa(tc) {0; tc<=17 1; tc>=37 0; tc>=40 (tc-24)/13; 16<tc<25 1; 35<= tc <=36 (tc-17)/18; 17< tc <35 ( 40-tc)/4; 36< tc < 40 } }
  • 25. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 25 µhơilạnh(tc){0; tc<=16 µlạnh(tc){ 0; tc<=10 0; tc>=37 0; tc>=34 1; 25<=tc<=34 1; 17<= tc <=24 (tc-16)/9 ; 16< tc <25 (tc-10)/7; 10< tc <17 (37-tc)/3 ; 34< tc <37 (34-tc)/10; 24< tc <34 } } µrấtlạnh(tc) { 0; tc>=36 1; tc<=16 (25-tc)/9; 16< tc <25 } Đây là đồ thị hóa các hàm thành viên cao, vừa, hơi lạnh, lạnh, rất lạnh: µ(tc) 1 rất lạnh lanh hơilạnh vừa cao 0 10 16 17 24 25 34 35 36 37 40 tc(0 C) - Ta xây dựng các hàm thành viên cho các tập mờ không sáng, sáng nhẹ, sáng vừa, sáng mạnh. µk.sáng(a){ 1; a=0 µs.nhẹ(a) {0; a< = 0 µs.vừa(a){ 0; a<=50 0; a≠0 0; a>=200 0; a=255 } } 1; 90<= t<=149 1; 150<=a<=199 (a-20)/70; 0< a <5 (a-50)/100; 50<a<150 (200-a)/51;35<a<30 (255-a)/56; 199<a<255 } }
  • 26. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 26 µs.mạnh(a){ 0; a<=100 1; 200<=a<=255 (a-100)/100; 100<a<200 } Đây là đồ thị hóa hàm thành viên không sáng, sáng nhẹ, sáng vừa, sáng mạnh: µ(a) 1 sáng nhẹ sáng vừa sáng mạnh khôngsáng 0 20 50 90 100 149 150 199 200 255 a(dv) Đến đây chúng ta đã hoàn thành khâu đầu tiên_mờ hóa và cũng là khâu khó nhất trong quá trình xử lý của bộ điều khiển. Sau đây chúng ta tiếp tục đến với hai khâu còn lại là lập luận mờ và giải mờ 3.1.2 Lập luận mờ : Nhiệm vụ của khâu này là xử lý các vector ui và cho ra giá trị mờ R với hàm thuộc µR(y) của biến ngôn ngữ đầu ra, vì thế chúng ta phải xây dựng tập luật dựa vào quy tắc điều khiển ở trên tức luật hợp thành và thuật toán xác định giá trị mờ của luật hợp thành.  Xây dựng tập luật cho vấn đề làm mát : R1: If t is thấp then v is k.quat. R2: If t is vừa then v is k.quat. R3: If t is hơi_nóng then v is q.nhẹ. R4: If t is nóng then v is q.vừa. R5: If t is rất_nóng then v is q.mạnh. - Khi có một giá trị đầu vào (t), ta sẽ tính được trọng số của các luật chính là kết quả thu nhận được từ các hàm thành viên : W1= µthấp(t). W2= µvừa(t).
  • 27. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 27 W3= µhoinong(t). W4= µnóng(t). W5= µrấtnóng(t). Theo lý thuyết hàm thành viên của kết luận cho bởi công thức : µC(z) = Wi µ Ki(Z) ; i = 1 …N. Ta có: µc(v)=W1*k.quat(v)+W2*k.quat(v)+W3*q.it(v)+W4*q.vua(v)+W5*q.mạnh(v).  Xây dựng tập luật cho vấn đề làm ấm : R1: If tc is cao then v is k.sáng. R2: If tc is vừa then v is k.sáng. R3: If tc is hơi_lạnh then v is s.nhẹ. R4: If tc is lạnh then v is s.vừa. R5: If tc is rất_lạnh then v is s.mạnh. - Khi có một giá trị đầu vào (tc), ta sẽ tính được trọng số của các luật chính là kết quả thu nhận được từ các hàm thành viên : W1’= µthấp(tc). W2’= µvừa(tc). W3’= µhoinong(tc). W4’= µnóng(tc). W5’= µrấtnóng(tc). Theo lý thuyết hàm thành viên của kết luận cho bởi công thức: µC(z) = Wi µ K1i(Z) ; i = 1 …N. Ta có: µc(a)=W1’*k.sáng(a)+W2*k.sáng(a)+W3’*s.nhẹ(a)+W4’*s.vừa(a)+W5’*s.mạnh( a). Đến đây chúng ta đã hoàn thành khâu thứ hai của quá trình xử lý_lập luận mờ, việc xây dựng các tập luật và thuật toán xác định giá trị mờ của luật hợp thành đã hoàn tất. Tiếp đến ta đến với khâu cuối cùng: giải mờ.
  • 28. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 28 3.1.3 Giải mờ : Nhiệm vụ của khâu này là chuyển đổi tập mờ µR(y) thành giá trị rõ y0 đầu ra cho các đối tượng. Phương pháp khử mờ được chọn lựa là phương pháp lấy điểm trọng tâm. - Ta có công thức tính giá trị rõ x0 của tập mờ A, tập vũ trụ U như sau:  x µA (x)dx   x µUi (x)dx x0 = =  µA (x) dx   µUi (x) dx - Tập mờ dạng hình thang : µ(m) H m1 m2 m a b - Sau khi tính các tích phân ta được kết quả : Jm= xµA (x)dx = (H/6) * (3*m2 2 – 3*m1 2 + b2 – a2 +3*m2*b+3*m1*a ). Im=  µA (x)dx = (H/2) * (2*m2 - 2*m1 + a + b ).  Áp dụng cho đối tượng quạt ta có: 5 ∑ Jm i=1 5 ∑ Im i=1 v0 = U U U U U U U U i=1 n i=1 n
  • 29. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 29 Áp dụng cho từng luật trong vấn đề làm mát với: Im= (H/2) * (2*m2 - 2*m1 + a + b ) Jm= (H/6) * (3*m2 2 – 3*m1 2 + b2 – a2 +3*m2*b+3*m1*a ) Kết quả rõ ở đầu ra sẽ là: v0 = Jm/Im (đv).  Áp dụng cho đối tượng đèn ta có: 5 ∑ Jm’ i=1 5 ∑ Im’ i=1 Áp dụng cho từng luật trong vấn đề làm mát với: Im’= (H’/2) * (2*m’2 - 2*m’1 + a’ + b’ ) Jm’= (H’/6) * (3*m’2 2 – 3*m1 2 + b’2 – a’2 +3*m’2*b’+3*m’1*a’ ) Kết quả rõ ở đầu ra sẽ là: a0 = Jm’/Im’ (đv). Trên đã trình bày xong các khâu xử lý bái toán về mặt nguyên lý của bộ điều khiển. Đến đây xem như đề tài đã hoàn thành cơ bản về mặt lý thuyết, các yếu tố liên quan đến nội dung các vấn đề cần giải quyết như tri thức chuyên gia, luật hợp thành, giải thuật cho xử lý của bộ điều khiển... đã được xử lý và trình bày. Tiếp theo chúng ta sẽ đến với nội dung rất quan trọng của đồ án là phần thiết kế và cài đặt trên thực tế. a0 =
  • 30. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 30 CHƯƠNG 4 THIẾT KẾ VÀ CÀI ĐẶT HỆ THỐNG ĐIỀU KHIỂN NHIỆT TRONG LÒ ẤP TRỨNG GÀ .
  • 31. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 31 4.1 Thiết kế phần cứng : Khái quát những tính năng của phần cứng: - Hệ thống điều khiển trong đồ án thực hiện nội dung chủ yếu là điều khiển nhiệt độ tự động theo tư duy của logic mờ, tức phần cứng được dùng là một bộ điều khiển mờ thực sự với đầy đủ các thuộc tính, quá trình và đặc điểm của nó. - Bên cạnh đó hệ thống còn cho phép người sử dụng có thể trực tiếp điều khiển bằng tay các đối tượng quạt và đèn thông qua một giao diện trên máy tính với các nút bấm tương tự như việc điều khiển một chiếc máy quạt hay một chiếc đèn bàn mà chúng ta đã rất quen thộc trogn cuộc sống thường ngày . - Trong tất cả các quá trình điều khiển, các thông số cụ thể về cường độ, nhiệt độ, trạng thái hoạt động... luôn được hiển thị trên LCD gắn trực tiếp trên mạch điện đề người dùng có thể theo dõi sát tiến trình làm việc của thiết bị giúp họ an tâm hơn khi sử dụng. - Đối với những người quan tâm đến các chỉ số mờ, họ có thể quan sát chúng một cách dễ dàng thông qua một bảng thông số mờ được thiết kế trên máy tính. Với những tính năng nói trên, yêu cầu quan trọng nhất của phần cứng là khả năng kết nối và trao đổi dữ liệu với máy tính. Ngoài ra phần cứng còn phải điều chỉnh được tốc độ động cơ quạt và cường độ sáng của đèn. - Để thực hiện được điều này, tôi đã thiết kế hai module trên phần cứng: +) Module ATmega: là module chính thực hiện các thao tác xử lý và điều khiển đối tượng. +) Module RS232: là module thực hiện việc giao tiếp, trao đổi dữ liệu giữa Module ATmega và máy tính. Sau đây là phần thiết kế về phần cứng nhằm đáp ứng các khả năngtrên cho hệ thống điều khiển. 4.1.1 Sơ đồ nguyên lý : 4.1.1.1 Module ATmega : Như đã nói ở trên module này thực hiện các thao tác xử lý và điều khiển đối tượng, sau đây là chi tiết hoạt động và sơ đồ thiết kế của nó. - Sơ đồ nguyên lý của Module ATmega:
  • 32. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 32 - Cảm biến nhiệt LM335 nhận nhiệt độ từ môi trường ngoài và liên tục cập nhật thông số này cho ATmega16L theo một chu kỳ được đặt sẵn. Đây là loại cảm biến nhiệt tương đối chậm, do đó việc cảm ứng với nhiệt độ môi trường là chưa cao, tuy nhiên trong giới hạn của đề tài này chúng ta chưa quan tâm lắm đến chất lượng của cảm biến nhiệt. - Chip ATmega nhận tín hiệu từ cảm biến nhiệt, tại đây bộ chuyển đổi A/D(Analog-Digital) tích hợp sẵn trong Chip sẽ tiến hành chuyển đổi tín hiệu tương tự thành tín hiệu số. Sau khi thực hiện việc chuyển đổi Chip ATmega16L sẽ tiếp tục xử lý, một đường tín hiệu được đưa hiển thị trên LCD, một đường khác được đưa đến module RS232. - Module RS232 sẽ “chuyên chở ” dữ liệu qua lại giữa máy tính với module ATmega. Thông số nhiệt độ sẽ được lên máy tính và các thông số kết quả xử lý từ máy tính cũng sẽ được trả về module ATmega. - Tất cả các việc trao đổi này được thực hiện thông qua các Port giao tiếp có sẵn trên ATmega16L. Phần này sẽ được nói rõ hơn trong phần sau của bài báo cáo này. 4.1.1.2 Module RS232 : - Module RS232 làm nhiệm vụ truyền thông giữa máy tính và Chip AVR qua cổng COM của máy tính. - Sơ đồ nguyên lý của module RS232 : Module RS232 Chip ATmega16L Cảm biến nhiệt (LM335) LCD
  • 33. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 33 COM PORT - IC được dùng trong module RS232 là Max 232, đây là IC được thiết kế chuyên dùng cho việc truyền thông giữa máy tính và các thiết bị ngoại vi. Kỹ thuật này được gọi là kỹ thuật truyền thông nối tiếp. - Nhiệt độ và các thông số khác sẽ được đưa lên máy tính thông qua sự điều khiển của Max232. Giao diện kết nối giữa chúng là cổng COM. - Giao tiếp giữa module RS232 và module ATmega được thực hiện thông qua một PORT đã có sẵn trên ATmega16L. - Mối liên hệ giữa các thành phần trong sơ đồ trên là mối liện hệ hai chiều. Tức là giữa chúng luôn có sự trao đổi thông tin qua lại lẫn nhau. 4.1.2 Sơ đồ chi tiết : 4.1.2.1 Module ATmega32 : - Các Port được lấy ra lần lượt đưa vào các khe cắm từ J1 đến J4. - Khe J được vẽ trích ra từ các chân 7, 8, 9, 10 và các chân nguồn của Chip nhằm làm rõ đây là nơi giao tiếp với máy tính qua cổng LPT để nạp chương trình cho Chip. - Các chân nối với J4 là nơi giao tiếp với LCD. +) Sơ lược t¸c dông c¸c linh kiÖn : +) LM335 c¶m biÕn nhiÖt ®é tõ m«i tr­êng bªn ngoµi ®Ó lÊy tÝn hiÖu nhiÖt ®é ®­a vµo vi xö lý. +) LCD gi¶i m· vµ hiÓn thÞ nhiÖt ®é và các thông khác. +) ATmega16L ®iÒu khiÓn hoạt động của thiÕt bÞ theo sự biến thiên nhiÖt ®é môi trường. +) Th¹ch anh t¹o dao ®éng cho ATMEGA16L. +) Led ®á cảnh báo khi nhiÖt ®é tăng quá cao. +) Led xanh cảnh báo khi gi¶m nhiÖt ®é giảm xuống quá thấp. - Hình ảnh phần chính của sơ đồ chi tiết module ATmega: Max 232 Desktop Module Atmega16L
  • 34. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 34
  • 35. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 35 4.1.2.2 Module RS232 : - Sơ đồ chi tiết:
  • 36. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 36 - Giao tiếp giữa máy tính và thiết bị được thực hiện thông qua cổng COM. - Tác dụng các linh kiện: +) Connector D89: giao diện cổng COM gồm 9 chân dùng để kết nối máy tính. +) IC Max232: điều khiển việc truyền thông, đảm bảo hoạt động này diễn ra thông suốt. +) Các chân được cấp nguồn và kết nối với thiết bị như trên sơ đồ. +) Các tụ điện: lọc nhiễu cho thiết bị. +) Các điện trở: chiết áp, bảo vệ về mặt điện cho IC Max232, tránh những cú sốc điện có thể làm hỏng IC. 4.1.3 Một số thiết bị khác: a) Cảm biến nhiệt LM335: - LM335 là một sản phẩm của công ty Dallas (Mü), đây cũng là công ty đóng góp nhiều vào việc cho ra đời bus một dây và các cảm biến một dây. Hình dạng bên ngoài của cảm biến: - §iÖn ¸p ho¹t ®éng tõ 3.0 – 5VDC - Ch©n 1 : GND (màu xanh lá). - Ch©n 2 : DQ (truyÒn tÝn hiÖu_ màu xanh dương). - Ch©n 3 : Nguån Vcc(màu đỏ). - Cã thÓ ®o nhiÖt ®é tõ -55 ®Õn +125˚C Các đặc điểm kỹ thuật của cảm biến DS18B20: - Không cần thêm linh kiện bên ngoài. Điện áp nguồn nuôi có thể thay đổi trong khoảng rộng, từ 3,0 V đến 5,5 V một chiều và có thể được cấp thông qua đường dẫn dữ liệu. - Dòng tiêu thụ tại chế độ nghỉ cực nhỏ. - Thời gian lấy mẫu và biến đổi thành số tương đối nhanh, không quá 200 ms. - Mỗi cảm biến có một mã định danh duy nhất 64 bit chứa trong bộ nhớ ROM trên chip (on chip), giá trị nhị phân được khắc bằng tia laze. - Đầu đo nhiệt độ số DS18B20 đưa ra số liệu để biểu thị nhiệt độ đo được dưới dạng mã nhị phân 9 bit. Các thông tin được gửi đến và nhận về từ DS18B20 trên giao diện 1-wire, do đó chỉ cần hai đường dẫn gồm một đường cho tín hiệu và một đường làm dây đất là đủ để kết nối vi điều khiển đến điểm đo.
  • 37. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 37 b) Mạch nạp Chip: - §iÖn ¸p ho¹t ®éng : 4.5 - 5 V, kh«ng cÇn cÊp nguån cho m¹ch n¹p chØ cÇn cÊp nguån cho m¹ch chñ. - PhÇn mÒm sö dông CodeVisionAVR hoÆc PonyProg nh­ng Code Vision AVR dÔ sö dông h¬n. - Cã thÓ n¹p ®­îc 25 lo¹i vi ®iÒu khiÓn cña AVR. - Cã 6 ch©n ra nèi víi chip AVR: +) Vcc : §Ó cÊp nguån dương cho m¹ch n¹p tõ chip chñ, nèi víi ch©n Vcc(10,30) cña ATMEGA16L. +) GND : CÊp nguån âm cho m¹ch n¹p tõ chip chñ,nèi víi ch©n GND(11,31) cña ATMEGA16L. +) MOSI : Master Output, Slave Input ( xuất ra từ tầng chủ), nèi víi ch©n MOSI(6). +) MISO : Master Input, Slaver Output( xuất ra từ tầng tớ),nèi víi ch©n MISO(7). +) SCK : Serial Clock (xung nhÞp nèi tiÕp),nèi víi ch©n SCK cña chip (8). +) RST : Ch©n Reset,t­¬ng tù nèi víi ch©n(9). - Sơ đồ: - KÕt nèi víi m¸y tÝnh b»ng cæng m¸y in (LPT):
  • 38. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 38 +) ¦u ®iÓm : m¹ch ®¬n gi¶n dÔ chÕ t¹o,gi¸ thµnh rÎ, cã thÓ n¹p ®­îc nhiÒu vi ®iÒu khiÓn AVR, kh«ng ph¶i th¸o chip khái m¹ch chñ, kh«ng cÇn cÊp nguån riªng cho m¹ch n¹p. +) Nh­îc ®iÓm : v× kh«ng cã ®iÖn trë h¹n dßng cho cæng LPT nªn dÔ g©y h¹i cho m¸y tÝnh. c) Các linh kiện quan trọng được dùng:  Chip Atmega16L:  LCD 2 dßng 16 ký tù: - §iÖn ¸p ho¹t ®éng tõ 2.7 – 5VDC. - TÇn sè hiÓn thÞ 2MHZ ë møc ®iÖn ¸p 5V.  Thạch anh 4.000Mhz: tạo dao động cho ATmega16L.  IC æn ¸p 5V t¹o ®iÖn ¸p 5V cÊp cho m¹ch  Một số tụ điện và điện trở :
  • 39. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 39 4.2 Thiết kế phần mềm: 4.2.1 Giải thuật: Như đã trình bày ở phần đầu tiên của bài báo cáo, giải thuật chủ yếu của chương trình dựa vào các khâu xử lý của bộ điều khiển mờ. Các bước quan trọng nhất của giải thuật đã được nói rất rõ ở phần III. Sau đây tôi xin tóm tắt và hệ thống lại các bước theo hình thức mã giả.  Giải thuật thực hiện việc làm mát: - Input: Nhiệt độ - Output: Cường độ quạt. - Method: t0=0;//khởi tạo nhiệt độ; v=0; //khởi tạo cường độ quạt While (ket_thuc=false) do { t0 = nhiệt độ nhận từ thiết bị ( ) ; m1=m2=a=b=0; //khởi tạo các tham số dùng cho việc giải mờ. //tính hàm thành viên qi[0] = thap(t0); qi[1] = vua(t0); qi[2] = hoi_nong(t0); qi[3] = nong[t0]; qi[4] = rat_nong[t0]; khoi_tao(Im, Jm); //tính giá trị hàm thành viên của kết luận và giải mờ k_quat(qi[0], var m1, var m2, var a, var b); //luật 1 Im= Im+qi[0]*tinh_I(qi[0], m1,m2, a, b); Jm=Jm+qi[0]*tinh_J(qi[0], m1,m2, a, b); k_quat(qi[1], var m1, var m2, var a, var b); //luật 2 Im= Im+qi[1]*tinh_I(qi[1], m1,m2, a, b); Jm=Jm+qi[1]*tinh_J(qi[1], m1,m2, a, b); q_nhe(qi[2], var m1, var m2, var a, var b); //luật 3
  • 40. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 40 Im= Im+qi[2]*tinh_I(qi[2], m1,m2, a, b); Jm=Jm+qi[2]*tinh_J(qi[2], m1,m2, a, b); q_vua(qi[3], var m1, var m2, var a, var b); //luật 4 Im= Im+qi[3]*tinh_I(qi[3], m1,m2, a, b); Jm=Jm+qi[3]*tinh_J(qi[3], m1,m2, a, b); q_manh(qi[4], var m1, var m2, var a, var b); //luật 5 Im= Im+qi[5]*tinh_I(qi[5], m1,m2, a, b); Jm=Jm+qi[5]*tinh_J(qi[5], m1,m2, a, b); if (Im=0) then v0=0 else v0=Jm/Im; Chuyển v0 đến quạt ( ); If (ngừng sử dụng = true) then ket_thuc= true else ket_thuc=false; }  Giải thuật thực hiện việc làm ấm: - Input: Nhiệt độ - Output: Cường độ sáng. - Method: tc0=0;//khởi tạo nhiệt độ; z=0; //khởi tạo cường độ sáng. While (ket_thuc=false) do { tc0 = nhiệt độ nhận từ thiết bị ( ) ; m’1=m’2=a’=b’=0; //khởi tạo các tham số dùng cho việc giải mờ. //tính hàm thành viên qj[0] = cao(tc0); qj[1] = vua(tc0); qj[2] = hoi_lanh(tc0); qj[3] = lanh[tc0]; qj[4] = rat_lanh[tc0]; khoi_tao(Imc, Jmc); //tính giá trị hàm thành viên của kết luận và giải mờ
  • 41. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 41 k_sang(qj[0], var m’1, var m’2, var a’, var b’); //luật 1 Imc= Imc+qj[0]*tinh_Ic(qj[0], m’1, m’2, a’, b’); Jmc=Jmc+qj[0]*tinh_Jc(qj[0], m’1,m’2, a’, b’); k_sang(qj[1], var m’1, var m’2, var a’, var b’); //luật 2 Imc= Imc+qj[1]*tinh_Ic(qj[1], m’1, m’2, a’, b’); Jmc=Jmc+qj[1]*tinh_Jc(qj[1], m’1,m’2, a’, b’); sang_nhe(qj[2], var m’1, var m’2, var a’, var b’); //luật 3 Imc= Imc+qj[2]*tinh_Ic(qj[0], m’1, m’2, a’, b’); Jmc=Jmc+qj[2]*tinh_Jc(qj[0], m’1,m’2, a’, b’); sang_vua(qj[3], var m’1, var m’2, var a’, var b’); //luật 4 Imc= Imc+qj[3]*tinh_Ic(qj[3], m’1, m’2, a’, b’); Jmc=Jmc+qj[3]*tinh_Jc(qj[3], m’1,m’2, a’, b’); sang_manh(qj[4], var m’1, var m’2, var a’, var b’); //luật 5 Imc= Imc+qj[4]*tinh_Ic(qj[4], m’1, m’2, a’, b’); Jmc=Jmc+qj[4]*tinh_Jc(qj[4], m’1,m’2, a’, b’); if Imc=0 then a0=0 else a0=Jm/Im; Chuyển a0 đến đèn ( ); If (ngừng sử dụng = true) then ket_thuc= true else ket_thuc=false; } - Trên là giải thuật của việc làm mát và làm ấm. Sau đây là phần cài đặt hệ thống trên thực tế. 4.2.2 Cài đặt chương trình: Chương trình được cài đặt bằng ngôn ngữ Visual Basic 8.0 trong bộ Visual Studio 2005. Với sự hỗ trợ khá mạnh của VB8.0 về phần lập trình hệ thống và phần lập trình hướng đối tượng nên đây là một sự lựa chọn rất thích hợp cho đề tài. Sau đây tôi xin giới thiệu một số đoạn code quan trọng trong chương trình: - Các module tính toán giá trị cho hàm thành viên cho việc làm mát:  Hàm tính giá trị cho hàm thành viên nhiệt độ thấp:
  • 42. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 42 Public Function thap(ByVal t As Single) As Single If (t >= 35) Then thap = 0 Else If (t <= 17.5) Then thap = 1 Else If (t > 17.5) And (t < 35) Then thap = (35 - t) / 17.5 End Function  Hàm tính giá trị cho hàm thành viên nhiệt độ vừa: Public Function vua(ByVal t As Single) As Single If (t = 0) Or (t >= 40) Then vua = 0 Else If (t >= 35) And (t <= 36) Then vua = 1 Else If (t > 0) And (t < 35) Then vua = t / 35 Else If (t > 36) And (t < 40) Then vua = (40 - t) / 4 End Function  Hàm tính giá trị cho hàm thành viên nhiệt độ hơi nóng: Public Function hoinong(ByVal t As Single) As Single If (t <= 17.5) Or (t >= 45) Then hoinong = 0 Else If (t >= 37) And (t <= 40) Then hoinong = 1 Else If (t > 17.5) And (t < 37) Then hoinong = (t - 17.5) / 19.5 Else If (t > 40) And (t < 45) Then hoinong = (45 - t) / 5 End Function  Hàm tính giá trị cho hàm thành viên nhiệt độ nóng: Public Function nong(ByVal t As Single) As Single If (t <= 35) Or (t >= 47) Then nong = 0 Else If (t >= 41) And (t <= 44) Then nong = 1 Else If (t > 35) And (t < 41) Then nong = (t - 35) / 6 Else If (t > 44) And (t < 47) Then nong = (47 - t) / 3 End Function  Hàm tính giá trị cho hàm thành viên nhiệt độ rất nóng: Public Function ratnong(ByVal t As Single) As Single If (t <= 36) Then ratnong = 0 Else If (t >= 45) Then ratnong = 1 Else If (t > 36) And (t < 45) Then ratnong = (t - 36) / 9 End Function
  • 43. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 43 - Các module tính toán giá trị của kết luận xác định cường độ quạt:  Hàm xác định giá trị kết luận không quạt: Public Sub khong_quat(ByVal qi As Single, ByRef m1 As Single, ByRef m2 As Single, ByRef a As Single, ByRef b As Single) qi = qi a = 0 b = 0 m1 = 0 m2 = 0 End Sub  Hàm xác định giá trị kết luận quạt nhẹ: Public Sub quat_nhe(ByVal qi As Single, ByRef m1 As Single,ByRef m2 As Single, ByRef a As Single, ByRef b As Single) a = qi * 70 b = qi * 51 m1 = 20 + a m2 = 200 - b End Sub  Hàm xác định giá trị kết luận quạt vừa: Public Sub quat_vua(ByVal qi As Single, ByRef m1 As Single, ByRef m2 As Single, ByRef a As Single,ByRef b As Single) a = qi * 100 b = qi * 56 m1 = 50 + a m2 = 255 - b End Sub  Hàm xác định giá trị kết luận quạt mạnh: Public Sub quat_manh(ByVal qi As Single, ByRef m1 As Single, ByRef m2 As Single, ByRef a As Single,ByRef b As Single) a = qi * 100 b = 0 m1 = 100 + a
  • 44. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 44 m2 = 255 End Sub  Module tính Im và Jm: Public Function tinh_I(ByVal H As Single, ByVal m1 As Single, ByVal m2 As Single, ByVal a As Single, ByVal b As Single) As Single tinh_I = H * (2 * m2 - 2 * m1 + a + b) / 2 End Function Public Function tinh_J(ByVal H As Single, ByVal m1 As Single, ByVal m2 As Single, ByVal a As Single, ByVal b As Single) As Single tinh_J = H * (3 * m2 * m2 - 3 * m1 * m1 + 3 * m1 * a + 3 * m2 * b + b * b - a * a) / 6 End Function  Module tính ra cường độ quạt : Public Sub tinh_v0() Dim m1 As Single Dim m2 As Single Dim a As Single Dim b As Single Dim Jm As Single Dim Im As Single qi(0) = thap(t0) qi(1) = vua(t0) qi(2) = hoinong(t0) qi(3) = nong(t0) qi(4) = ratnong(t0) Im = 0 Jm = 0 If t0 <= 36 Then v0 = 0 ElseIf t0 >= 47 Then v0 = 255 Call khong_quat(qi(0), m1, m2, a, b) 'nhiet do thap Im = Im + qi(0) * tinh_I(qi(0), m1, m2, a, b)
  • 45. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 45 Jm = Jm + qi(0) * tinh_J(qi(0), m1, m2, a, b) Call khong_quat(qi(1), m1, m2, a, b) 'nhiet do vua Im = Im + qi(1) * tinh_I(qi(1), m1, m2, a, b) Jm = Jm + qi(1) * tinh_J(qi(1), m1, m2, a, b) Call quat_nhe(qi(2), m1, m2, a, b) 'nhiet do hoi nong Im = Im + qi(2) * tinh_I(qi(2), m1, m2, a, b) Jm = Jm + qi(2) * tinh_J(qi(2), m1, m2, a, b) Call quat_vua(qi(3), m1, m2, a, b) 'nhiet do nong Im = Im + qi(3) * tinh_I(qi(3), m1, m2, a, b) Jm = Jm + qi(3) * tinh_J(qi(3), m1, m2, a, b) Call quat_manh(qi(4), m1, m2, a, b) 'nhiet do rat nong Im = Im + qi(4) * tinh_I(qi(4), m1, m2, a, b) Jm = Jm + qi(4) * tinh_J(qi(4), m1, m2, a, b) Else Im = 0 Jm = 0 Call khong_quat(qi(0), m1, m2, a, b) 'nhiet do thap Im = Im + qi(0) * tinh_I(qi(0), m1, m2, a, b) Jm = Jm + qi(0) * tinh_J(qi(0), m1, m2, a, b) Call khong_quat(qi(1), m1, m2, a, b) 'nhiet do vua Im = Im + qi(1) * tinh_I(qi(1), m1, m2, a, b) Jm = Jm + qi(1) * tinh_J(qi(1), m1, m2, a, b) Call quat_nhe(qi(2), m1, m2, a, b) 'nhiet do hoi nong Im = Im + qi(2) * tinh_I(qi(2), m1, m2, a, b) Jm = Jm + qi(2) * tinh_J(qi(2), m1, m2, a, b)
  • 46. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 46 Call quat_vua(qi(3), m1, m2, a, b) 'nhiet do nong Im = Im + qi(3) * tinh_I(qi(3), m1, m2, a, b) Jm = Jm + qi(3) * tinh_J(qi(3), m1, m2, a, b) Call quat_manh(qi(4), m1, m2, a, b) 'nhiet do rat nong Im = Im + qi(4) * tinh_I(qi(4), m1, m2, a, b) Jm = Jm + qi(4) * tinh_J(qi(4), m1, m2, a, b) If Im = 0 Then v0 = 0 Else : v0 = Jm / Im End If End If Labelim.Text = Im Labeljm.Text = Jm End Sub  Module tính ra cường độ sáng của đèn: Private Sub tinh_a0() Dim mc1 As Single Dim mc2 As Single Dim ac As Single Dim bc As Single Dim Jmc As Single Dim Imc As Single qj(0) = cao(tc0) qj(1) = vuatc(tc0) qj(2) = hoi_lanh(tc0) qj(3) = lanh(tc0) qj(4) = rat_lanh(tc0) Imc = 0 Jmc = 0 If tc0 >= 35 Then
  • 47. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 47 a0 = 0 ElseIf tc0 <= 16 Then a0 = 255 Call sang_manh(qj(4), mc1, mc2, ac, bc) 'nhiet do rat lanh Imc = Imc + qj(4) * tinh_Ic(qj(4), mc1, mc2, ac, bc) Jmc = Jmc + qj(4) * tinh_Jc(qj(4), mc1, mc2, ac, bc) Call sang_vua(qj(3), mc1, mc2, ac, bc) 'nhiet do lanh Imc = Imc + qj(3) * tinh_Ic(qj(3), mc1, mc2, ac, bc) Jmc = Jmc + qj(3) * tinh_Jc(qj(3), mc1, mc2, ac, bc) Call sang_it(qj(2), mc1, mc2, ac, bc) 'nhiet do hoi lanh Imc = Imc + qj(2) * tinh_Ic(qj(2), mc1, mc2, ac, bc) Jmc = Jmc + qj(2) * tinh_Jc(qj(2), mc1, mc2, ac, bc) Call khong_sang(qj(1), mc1, mc2, ac, bc) 'nhiet do vua Imc = Imc + qj(1) * tinh_Ic(qj(1), mc1, mc2, ac, bc) Jmc = Jmc + qj(1) * tinh_Jc(qj(1), mc1, mc2, ac, bc) Call khong_sang(qj(0), mc1, mc2, ac, bc) 'nhiet do cao Imc = Imc + qj(0) * tinh_Ic(qj(0), mc1, mc2, ac, bc) Jmc = Jmc + qj(0) * tinh_Jc(qj(0), mc1, mc2, ac, bc) Else Imc = 0 Jmc = 0 Call sang_manh(qj(4), mc1, mc2, ac, bc) 'nhiet do rat lanh Imc = Imc + qj(4) * tinh_Ic(qj(4), mc1, mc2, ac, bc) Jmc = Jmc + qj(4) * tinh_Jc(qj(4), mc1, mc2, ac, bc) Call sang_vua(qj(3), mc1, mc2, ac, bc) 'nhiet do lanh Imc = Imc + qj(3) * tinh_Ic(qj(3), mc1, mc2, ac, bc) Jmc = Jmc + qj(3) * tinh_Jc(qj(3), mc1, mc2, ac, bc)
  • 48. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 48 Call sang_it(qj(2), mc1, mc2, ac, bc) 'nhiet do hoi lanh Imc = Imc + qj(2) * tinh_Ic(qj(2), mc1, mc2, ac, bc) Jmc = Jmc + qj(2) * tinh_Jc(qj(2), mc1, mc2, ac, bc) Call khong_sang(qj(1), mc1, mc2, ac, bc) 'nhiet do vua Imc = Imc + qj(1) * tinh_Ic(qj(1), mc1, mc2, ac, bc) Jmc = Jmc + qj(1) * tinh_Jc(qj(1), mc1, mc2, ac, bc) Call khong_sang(qj(0), mc1, mc2, ac, bc) 'nhiet do cao Imc = Imc + qj(0) * tinh_Ic(qj(0), mc1, mc2, ac, bc) Jmc = Jmc + qj(0) * tinh_Jc(qj(0), mc1, mc2, ac, bc) ti = Imc tj = Jmc If Imc = 0 Then a0 = 0 Else : a0 = Jmc / Imc End If End If Labelic.Text = Imc Labeljc.Text = Jmc End Sub  Module điều khiển hoạt động của chế độ hoạt động tự động: Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick On Error GoTo loi st = vcom.ReadExisting() If (st.Length() >= 3) Then st = st.Remove(2, (st.Length() - 2)) Label1.Text = st
  • 49. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 49 Else Label1.Text = st End If '---------------------- If Label1.Text = "" Then 'MsgBox("khong co du lieu") Else nhiet = CSng(Label1.Text) End If t0 = nhiet tc0 = nhiet Call tinh_v0() Call tinh_a0() Label7.Text = CInt(v0) Label8.Text = CInt(a0) Label18.Text = CInt((a0 / 255) * 100) Label20.Text = CInt((v0 / 255) * 100) bar.Value = CInt(nhiet) If (nhiet > 35.5) Then Timer3.Enabled = False Timer4.Enabled = True 'lam mat Else Timer4.Enabled = False Timer3.Enabled = True 'lam am End If If nhiet <= 17 Then Label4.Visible = True Timer5.Enabled = True Else Label4.Visible = False
  • 50. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 50 Timer5.Enabled = False End If If nhiet >= 48 Then Label3.Visible = True Timer2.Enabled = True Else Label3.Visible = False Timer2.Enabled = False End If If (18 <= nhiet) And (nhiet <= 47) Then Label35.Visible = True Else Label35.Visible = False End If loi: End Sub  Module điều khiển chế độ hoạt động bằng tay của điều khiển đèn: Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Dim tam As Single On Error GoTo loi st = vcom3.ReadExisting() If (st.Length() >= 3) Then st = st.Remove(2, (st.Length() - 2)) Label1.Text = st Else Label1.Text = st End If If Label1.Text = "" Then
  • 51. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 51 Else tam = CInt(Label1.Text) End If bar.Value = tam loi: End Sub  Trên đây là một số đoạn code quan trọng trong chương trình phục vụ cho việc điều khiển đối tượng quạt, việc điều khiển đối tượng đèn là hoàn toàn tương tự. Để tinh giảm bớt độ dài của bài báo cáo, tôi không nêu thêm các đoạn code thuộc vấn đề kết nối với thiết bị, giải quyết tương tranh... . Tuy nhiên việc kết nối và giải quyết cũng chỉ đơn thuần mang tính công nghệ mà thôi. 4.3 Giới thiệu CODEVISION AVR: CODEVISION AVR là phần mềm được thiết kế bởi hãng Pavel Haiduc chuyên dùng để lập trình cho các loại Chip AVR. Ngoài CODEVISION AVR cũng có một số phần mềm khác có tính năng tương tự nhưng đây CODEVISION vẫn là sự lựa chọn phổ biến nhất bởi tính đơn giản, hiệu quả và dễ sử dụng. - CODEVISION AVR cung cấp cho người dùng một Wizard để lựa chọn các thông số kỹ thuật phù hợp với loại Chip mà minh đang sử dụng. - Điểm quan trọng nhất của phần mềm này là nó cho phép người sử dụng có thể dùng ngôn ngữ C để lập trình cho Chip thay thế cho các lập trình bằng hợp ngữ trước đây. - Mặc dù Chip AVR có hỗ trợ lập trình bằng ngôn ngữ C nhưng để nạp được chương trình cho nó vẫn phải biên dịch thành file dạng hợp ngữ. - Đây được xem là phần mềm được yêu thích nhất của các lập trình viên, kỹ thuật viên ... làm việc với AVR. - Sau đây tôi xin giới thiệu một số bước trong lập trình và nạp Chip:
  • 52. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 52 +) Giao diện lập trình:
  • 53. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 53 +) Biên dịch thành file Hex: +) Thiết lập các thông số Chip và cổng nap: +) Nạp Chip:
  • 54. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 54 +) Thiết lập các thông số cho liên lạc giữa Chip và máy tính: +) Vµo Read -> ChipSignalture nÕu m¹ch n¹p nhËn chip th× tªn chip vµ tÇn sè chip sÏ hiÖn trªn «:
  • 55. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 55 +) Cầu hình của dự án chứa chương trình:
  • 56. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 56 CHƯƠNG 5 GIỚI THIỆU THIẾT BỊ VÀ CHƯƠNG TRÌNH
  • 57. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 57 5.1 Giới thiệu thiết bị: - Đây là thiết bị sau khi xây dựng hoàn chỉnh: các module được lắp đặt lên mạch và kết nối với nhau thành công.
  • 58. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 58 - Đây là mạch điện lúc được cấp nguồn và hoạt động: Nhiệt độ hiện lên trên màn hình là 280 C.
  • 59. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 59  Đây là mạch điện khi hoạt động ở chế độ tự động: - Trên màn hình đang hiển thị: - Nhiệt độ 290 C. - Cường độ sáng: 125 đv.
  • 60. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 60  Đây là mạch điện lúc hoạt động ở chế độ điều khiển làm mát bằng tay - Quạt đang chạy với cường độ là 255 đv_ cường độ tối đa. - Đèn không hoạt động ở chế độ này - Nhiệt độ :290 C.
  • 61. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 61  Đây là mạch điện lúc hoạt động ở chế độ điều khiển làm ấm bằng tay - Đèn đang sáng với cường độ là 255 đv_ cường độ tối đa. - Quạt không hoạt động ở chế độ này. - Nhiệt độ :290 C.
  • 62. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 62  Thiết bị cảnh báo khi nhiệt độ lên quá cao: - Nhiệt độ hiện tại là 530 C_nhiệt độ rất cao trong lò. - Đèn LED màu đỏ nháy sáng liên tục để cảnh báo với người sử dụng. - Quạt chạy với cường độ tối đa 255đv.
  • 63. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 63 5.2 Giới thiệu chương trình: - Giao diện chính của chương trình:
  • 64. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 64 - Cửa sổ chương trình hoạt động ở chế độ điều khiển tự động:
  • 65. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 65 - Cửa sổ chương trình hoạt động ở chế độ điều khiển làm mát bằng tay:
  • 66. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 66 - Cửa sổ chương trình hoạt động ở chế độ điều khiển làm ấm bằng tay:
  • 67. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 67 V.3 Kết luận :  Đồ án này đã ứng dụng được lý thuyết logic mờ trong điều khiển tự động thiết bị. Ngoài ra còn áp dụng một số kỹ thuật khác về phần cứng như: - Kỹ thuật vi xử lý. - Kỹ thuật truyền thông nối tiếp. - Kỹ thuật lập trình hệ thống.  So với lần thực tập chuyên nghành lần trước đồ án lần này đã có một số cải tiến như: - Đã xây dựng và sử dụng được hai bộ điều khiển mờ. - Điều khiển được tốc độ của quạt thay vì chỉ bật hoặc tắt như trước. - Điều khiển được cường độ sáng của đèn. Bên cạnh những vấn đề đã giải quyết được vẫn còn một số điểm chưa xử lý được như: - Chưa thể tự động nạp lại chương trình mỗi khi khởi động lại máy tính. - Thiết kế mạch còn khá rườm rà thiếu tính thẩm mỹ và gọn gàng. - Cảm biến nhiệt chưa thật sự nhạy, cảm ứng nhiệt với môi trường còn chậm.
  • 68. Điều khiển nhiệt độ lò ấp trứng ứng dụng logic mờ. SVTH: Bùi Quang Vinh. 68 Tài liệu tham khảo: Bùi Công Cường - Nguyễn Doãn Phước, Hệ mờ - mạng nơron và ứng dụng, Nhà xuất bản khoa học và kỹ thuật, 2006. TS Nguyễn Đình Thuân , Bài giảng Hệ Chuyên Gia, Đại học Nha Trang, 2007. Nguyễn Thúy Vân, Kỹ thuật Vi xử lý, Nhà xuất bản giao dục, 2002. Ngô Diên Tập, Lập trình ghép nối máy tính trong Windows, Nhà xuất bản khoa học và kỹ thuật, 2002. Ngô Diên Tập, Đo lường và điều khiển băn máy tính, Nhà xuất bản khoa học và kỹ thuật, 2002. Nguyễn Thiên Bằng - Nguyễn Phương Lan, Lập trình VB2005, Nhà xuất bản lao động xã hội, 2007.