Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 1
Tóm tắt công trình sinh viên nghiên cứu khoa học năm học 2010-2011
Mã số:…
THIẾT KẾ, CHẾ TẠO HỆ ĐIỀU KHIỂN ĐỊNH HƯỚNG PIN MẶT TRỜI
Sinh viên: Đinh Hồng Bộ
Nguyễn Nhật Dương
Nguyễn Hồng Long
Đỗ Văn Sơn
Lớp: Cơ điện tử 4-K51,Viện Cơ khí
Điện thoại: 0973 371 565, 0127 378 0862
Thầy giáo hướng dẫn: PGS.TS Phạm Văn Hùng
Bộ môn: Máy và ma sát học, Viện Cơ khí
TÓM TẮT NỘI DUNG
Nhu cầu về năng lượng của con người trong thời đại khoa học kỹ thuật phát triển ngày
càng tăng. Trong khi đó các nguồn nhiên liệu dự trữ như than đá, dầu mỏ, khí thiên nhiên và
thủy điện đều có hạn, khiến cho nhân loại đứng trước nguy cơ thiếu hụt năng lượng. Con người
cần tìm ra các nguồn năng lượng mới. Cùng với năng lượng gió, thủy triều, năng lượng mặt
trời là hướng phát triển năng lượng quan trọng trong tương lai.
Hiện nay hệ thống pin mặt trời thường được lắp cố định, do đó pin chỉ đạt hiệu suất lớn
nhất khi ánh sáng mặt trời vuông góc với mặt phẳng của tấm pin. Các vùng khác, hiệu suất của
tấm pin mặt trời sẽ giảm. Để nâng cao hiệu suất của pin mặt trời, cần một hệ thống cảm biến
xác định hướng chiếu của ánh sáng mặt trời, từ đó điều khiển cho mặt phẳng của tấm pin
hướng vuông góc với ánh sáng mặt trời.
Mục đích của đề tài này là tự động hóa quá trình điều khiển định hướng hệ thống pin mặt
trời đạt hiệu suất cao nhất, thu được nhiều năng lượng sạch từ mặt trời.
TÀI LIỆU THAM KHẢO
1. Tống Văn On, Hoàng Đức Hải; Họ vi điều khiển 8051; Nhà xuất bản Lao động- Xã
hội; Xuất bản năm 2009
2. Huỳnh Đắc Thắng; Kỹ thuật số thực hành; NXB KH-KT; Hà Nội 2006
3. Bộ môn Công nghệ chế tạo máy; Cơ sở Công nghệ chế tạo máy; NXB KH-KT; Hà
Nội 2008
4. Help Matlab; Phần mềm Matlab 7.7.0
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 2
MỤC LỤC
Mục lục………………………………………………………………………………………….2
Lời nói đầu…………………………………………………………………………………… 3
PHẦN 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Đặt vấn đề………………………………………………………………………………….4
1.2 Mục tiêu đề tài…………………………………………………………………………… 4
1.3 Phạm vi nghiên cứu……………………………………………………………………… 5
PHẦN 2: KẾT QUẢ NGHIÊN CỨU
2.1 Giới thiệu chung về đề tài…………………………………………………………………6
2.2 Thiết kế, chế tạo kết cấu cơ khí………………………………………………………… 8
2.3 Chọn động cơ và thiết kế, chế tạo mạch điều khiển………………………………………11
2.4 Phần mềm điều khiển và lập trình……………………………………………………… 18
PHẦN 3: KẾT LUẬN
3.1 Ý nghĩa khoa học và ứng dụng thực tiễn………………………………………………….26
3.2 Định hướng phát triển…………………………………………………………………… 26
Tài liệu tham khảo…………………………………………………………………… 27
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 3
LỜI NÓI ĐẦU
Năng lượng tái tạo, trong đó có năng lượng mặt trời đã và đang được cả thế giới quan
tâm nghiên cứu và sử dụng. Trên thế giới, các nước phát triển đã có rất nhiều ứng dụng trong
đời sống và trong công nghiệp để thu được các nguồn năng lượng này. Với ưu điểm là sẵn có,
dồi dào, là nguồn năng lượng sạch, thân thiện với môi trường, năng lượng mặt trời đang là giải
pháp thay thế cho các nguồn năng lượng khác đang ngày cạn kiệt trên Trái Đất. Tại các nước
đang phát triển, trong đó có Việt Nam việc sử dụng năng lượng mặt trời đã được quan tâm và
khích lệ, tuy nhiên những ứng dụng còn rất hạn chế.
Với mong muốn đưa những ứng dụng sử dụng năng lượng mặt trời ở Việt Nam được
phổ biến và phát triển hơn nữa, đem những kiến thức đã học được áp dụng vào thực tế sản
xuất, vì vậy nhóm sinh viên chúng em đã thực hiện đề tài: “Thiết kế, chế tạo hệ điều khiển
định hướng pin mặt trời”.
Sản phẩm làm ra là sự kết hợp giữa nghiên cứu lý thuyết và triển khai thực tế trên cơ sở
làm việc theo nhóm. Đề tài là sự kết hợp giữa cơ khí- điện tử- tin học, thiết kế kết cấu cơ khí,
chọn động cơ và thiết kế chế tạo mạch điều khiển, xây dựng phần mềm điều khiển và lập trình.
Đây là sản phẩm đầu tiên của nhóm sinh viên chúng em nên không thể tránh khỏi thiếu
xót và hạn chế, chúng em rất mong nhận được sự góp ý, chỉ bảo của các thầy giáo, cô giáo và
các bạn.
Chúng em xin trân thành cảm ơn Thầy PGS.TS Phạm Văn Hùng, cùng các thầy cô
trong bộ môn Máy và Ma sát đã tận tình hướng dẫn và giúp đỡ chúng em hoàn thành tốt đề tài
này, chúng em cũng xin trân thành cảm ơn ban lãnh đạo bộ môn đã tạo mọi điều kiện làm việc
cũng như các trang thiết bị cần thiết giúp đỡ chúng em trong suốt thời gian qua.
Hà nội, ngày 10 tháng 5 năm 2011
Nhóm sinh viên thực hiện
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 4
PHẦN 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1/ Đặt vấn đề:
Khi các nguồn năng lượng phổ biến như thủy điện, nhiệt điện đang ngày một cạn kiệt,
việc sản xuất điện bằng các nhà máy thủy điện, các nhà máy nhiệt điện gây ra ô nhiểm môi
trường và thay đổi môi trường sinh thái. Trong khi đó nhu cầu về điện năng ngày càng tăng
cao, con người cần phải tìm ra các nguồn năng lượng mới để đáp ứng nhu cầu của mình. Năng
lượng mặt trời là một trong những giải pháp được tìm ra để thay thế, với ưu điểm là nguồn
năng lượng sạch, lâu dài, là nguồn năng lượng tái tạo, thân thiện với môi trường. Các ứng dụng
của năng lượng mặt trời phổ biến hiện nay bao gồm hai lĩnh vực chủ yếu. Thứ nhất là năng
lượng mặt trời được biến đổi trực tiếp thành điện năng nhờ các tế bào quang điện bán dẫn hay
còn gọi là pin mặt trời. Lĩnh vực thứ hai đó là sử dụng năng lượng mặt trời dưới dạng nhiệt
năng, ở đây ta dùng các thiết bị thu bức xạ nhiệt mặt trời và tích trữ nó dưới dạng nhiệt năng.
Với ưu điểm là một nước có tiềm năng về năng lượng mặt trời, có lãnh thổ trải dài từ vĩ
độ 8 Bắc đến 23 Bắc, nằm trong khu vực có cường độ bức xạ tương đối cao. Do đó việc sử
dụng năng lượng mặt trời tại Việt Nam đang được khuyến khích và áp dụng trong mọi lĩnh vực
đời sống và sản xuất.
Hệ thống pin mặt trời được sử dụng nhằm mục đích sản xuất ra điện trực tiếp từ năng
lượng mặt trời thông qua các tấm pin mặt trời là các tế bào quang điện bán dẫn. Pin mặt trời có
ưu điểm là gọn nhẹ có thể lắp bất kì đâu có ánh sáng mặt trời. Khi ánh sáng chiếu tới pin mặt
trời càng lớn tức là cường độ ánh sáng chiếu tới tấm pin càng lớn thì càng có nhiều năng lượng
mặt trời biến đổi thành điện năng tức là hiệu suất của tấm pin mặt trời càng tăng lên. Hệ thống
pin mặt trời thường được lắp cố định vào một tấm đế, do đó pin mặt trời chỉ đạt hiệu suất lớn
nhất khi ánh sáng mặt trời chiếu vuông góc với mặt phẳng của tấm pin. Các vùng khác, hiệu
suất của pin mặt trời sẽ giảm. Giải pháp đưa ra để nâng cao hiệu suất của pin mặt trời là hệ
thống điều khiển chuyển động của tấm pin mặt trời luôn hướng vuông góc với ánh sáng mặt
trời.
1.2/ Mục tiêu của đề tài:
- Nâng cao hiệu suất chuyển đổi của tấm pin thông qua việc điều khiển vị trí tấm pin
luôn vuông góc với tia sáng mặt trời chiếu tới.
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 5
- Nâng cao độ chính xác của hệ thống với phần mềm Matlab và xử lý ảnh chụp của
mặt trời thông qua Webcam.
- Thiết kế, chế tạo, mô phỏng hoàn chỉnh hệ thống điều khiển định hướng pin mặt trời.
1.3/ Phạm vi nghiên cứu:
Với mục tiêu thiết kế và chế tạo hệ định hướng pin mặt trời nhưng do điều kiện thời gian,
kinh phí có hạn đề tài chỉ giới hạn trong phạm vi sau:
- Mô hình hóa hệ thống định hướng pin mặt trời dùng cho học tập và nghiên cứu.
- Động cơ dẫn động cơ khí là động cơ bước.
- Sử dụng phần mềm Matlab để xử lý ảnh, phần mềm điều khiển trên máy tính.
- Độ rọi của nguồn sáng xử lý giới hạn 1000 ÷ 100000 (lux).
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 6
PHẦN 2: KẾT QUẢ NGHIÊN CỨU
2.1/ Giới thiệu chung về đề tài:
*Nội dung của đề tài bao gồm 3 phần chính:
- Thiết kế, chế tạo kết cấu cơ khí.
- Chọn động cơ và thiết kế, chế tạo mạch điều khiển.
- Xử lý ảnh qua Matlab.
*Tổng quan sơ đồ của hệ thống:
Hình 1: Sơ đồ nguyên lý
M
ạ
ch công su
ấ
t
M
ạ
ch đi
ề
u khi
ể
n
Máy tính
Động cơ bước
Webcam
Tấm pin
Trục nằm ngang
Trục
thẳng
đứng
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 7
Hình 2: Hình ảnh sản phẩm chế tạo
*Nguyên lý hoạt động của hệ thống:
Khi hệ thống hoạt động, webcam kết nối với máy tính có nhiệm vụ chụp ảnh Mặt Trời, dữ
liệu về ảnh của Mặt Trời sẽ được chuyển đến phần mềm Matlab xử lý, phân tích ảnh, tìm trọng
tâm của ảnh chụp sau đó máy tính xuất xung ra mạch điều khiển để điều khiển lần lượt hai
động cơ bước quay theo chiều phù hợp cho đến khi tâm ảnh về đúng với tâm của khung hình
(tấm pin vuông góc với Mặt trời) thì hệ thống dừng ở trạng thái giữ.
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 8
2.2/ Thiết kế, chế tạo kết cấu cơ khí:
2.2.1/ Nhiệm vụ, yêu cầu của kết cấu cơ khí:
*Nhiệm vụ:
Cơ cấu cơ khí sẽ bao gồm các chuyển động để điều khiển tấm pin mặt trời chuyển động
hướng theo mặt trời cho đến khi tấm pin vuông góc với tia sáng mặt trời thì dừng lại.
*Yêu cầu:
- Kết cấu đơn giản và số chuyển động là ít nhất.
- Chuyển động đạt độ chính xác cao.
2.2.2/ Thiết kế, chế tạo kết cấu cơ khí:
a)Thiết kế:
*Từ yêu cầu và nhiệm vụ đề ra, ta chỉ cần dùng hai chuyển động quay quanh hai trục Oz
và Ox(hoặc Oy) trong hệ tọa độ Đề Các để điều khiển tấm pin hướng theo mặt trời. Thật vậy,
xét trong hệ tọa độ Đề Các trong không gian gắn liền với tấm pin, tấm pin nằm trong mặt
phẳng Oxy, gốc O trùng với tâm của tấm pin, giả sử tia sáng từ mặt trời chiếu tới tấm pin hợp
với trục Oz một góc α, hình chiếu của tia sáng trên mặt phẳng Oxy hợp với trục Oy góc β. Để
tia sáng vuông góc với tấm pin tức là tia sáng vuông góc với mặt phẳng Oxy, ta lần lượt quay
hệ tọa độ quanh trục Oz góc β (khi quay quanh trục Oz góc α hợp bởi tia sáng với trục Oz
không thay đổi), rồi tiếp tục quay hệ tọa độ quanh trục Ox góc α.
Hình 3: Chuyển động quay của hai trục tọa độ
z
y
x
O
S
S'
z1
y
x
O
S
S'
y1
x1
z1
O
S
y1
x1
z2
y2
α
β
β
α
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 9
*Chuyển động quay quanh trục Oz được thực hiện thông qua truyền động cơ khí là bộ
truyền bánh răng trụ răng thẳng. So với các truyền động cơ khí khác, truyền động bánh răng có
ưu điểm nổi bật:
- Kích thước nhỏ, khả năng tải lớn.
- Tỷ số truyền không thay đổi.
- Hiệu suất cao, có thể đạt 0,97 ÷ 0,99
- Tuổi thọ cao, làm việc tin cậy.
Tuy nhiên truyền động bánh răng có các nhược điểm sau:
- Chế tạo tương đối phức tạp.
- Đòi hỏi độ chính xác cao.
- Có nhiều tiếng ồn khi vận tốc lớn.
*Chuyển động quay quanh trục Ox được thực hiện thông qua truyền động cơ khí là bộ
truyền đai răng. Truyền động đai có ưu điểm sau:
- Có khả năng truyền chuyển động và cơ năng giữa các trục ở khá xa nhau.
- Làm việc êm, không ồn.
- Kết cấu đơn giản, giá thành rẻ.
Nhược điểm của bộ truyền đai:
- Khuôn khổ kích thước lớn hơn so với bộ truyền bánh răng (khi cùng một điều kiện
làm việc).
- Lực tác dụng lên trục và ổ lớn do phải căng đai.
*Ổ lăn được sử dụng để đỡ hai trục chuyển động, loại ổ lăn dùng là loại ổ bi đỡ một dãy.
So với ổ trượt, ổ lăn có ưu điểm:
- Hệ số ma sát nhỏ.
- Chăm sóc và bôi trơn đơn giản, ít tốn vật liệu bôi trơn, có thể dùng mỡ bôi trơn.
- Kích thước chiều rộng ổ lăn nhỏ hơn chiều rộng ổ trượt có cùng đường kính ngõng
trục.
- Mức độ tiêu chuẩn hóa và tính lắp lẫn cao, thay thế thuận tiện, giá thành thấp do sản
xuất hàng loạt.
Tuy nhiên ổ lăn có một số nhược điểm:
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 10
- Lắp ghép tương đối khó khăn.
- Kích thước hướng kính lớn.
- Lực quán tính tác dụng lên các con lăn khá lớn khi làm việc với vận tốc cao.
*Do trục có lắp ghép với các chi tiết máy khác như ổ lăn, bánh răng nên ta chọn trục là
loại trục bậc, tuy có kết cấu phức tạp hơn trục trơn nhưng đảm bảo các điều kiện lắp
ghép.
b)Chế tạo:
Phần cơ khí của hệ thống bao gồm:
1- Ống đỡ thẳng đứng
2- Ổ bi đỡ
3- Bánh răng
4- Trục thẳng đứng
5- Khung đỡ
6- Bánh đỡ
7- Tấm đỡ
8- Tấm pin mặt trời
9- Webcam
10- Bu lông, đai ốc, vít
11- Trục nằm ngang
12- Dây đai
13- Động cơ bước
Thông số hình học của bộ truyền bánh răng trụ răng thẳng:
Thông số m Z d b
Bánh chủ động 1 25 25 8
Bánh bị động 1 62 62 5
Tỷ số truyền:
u=
=
=
=
Tỷ số truyền của bộ truyền đai:
u =
=
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 11
2.3/ Chọn động cơ và thiết kế, chế tạo mạch điều khiển:
A. PHẦN CỨNG:
Giới thiệu chung sơ đồ phần cứng:
Chú thích:
Mạch nguồn: để tăng tính ổn định của mạch ta dùng bộ nguồn máy tính.
Khối điều khiển chính nòng cốt là chip atmega 89S52.
Thiết bị ngoại vi là 2 động cơ bước.
1.Chọn động cơ bước:
Động cơ bước là loại động cơ không đồng bộ dùng để biến đổi các tín hiệu điều khiển
dưới dạng các xung điện rời rạc kế tiếp nhau thành các chuyển động góc quay của rotor. Góc
quay này có giá trị nhất định phụ thuộc vào xung điện áp cấp vào stator theo kiểu nào, và được
định nghĩa là góc bước của rotor. Động cơ bước được sử dụng trong đề tài là động cơ 2 pha, 6
đầu dây, dòng quy ước là 1,2A và điện áp cấp vào là 5.16V, thuộc loại động cơ biến từ trở.
Ta dùng phương pháp đo điện trở để xác định các đầu dây của động cơ bước căn cứ vào
cấu tạo của các cuộn dây bên trong động cơ. Đối với động cơ bước 6 dây như trên sẽ chia làm
2 nhóm, mỗi nhóm có 3 dây trong đó có một dây chung, gọi là dây COM (common) mà điện
trở của đầu dây này đối với 2 đầu dây còn lại thuộc nhóm đó sẽ bằng nhau, còn giữa các dây
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 12
khác nhóm sẽ hoàn toàn cách điện. Dựa vào đó ta sẽ tìm được 2 dây COM và các dây thuộc
cùng nhóm với dây COM tương ứng của động cơ bước. Hình vẽ dưới đây mô tả các đầu các
cuôn dây sau khi đã xác định điện trở:
Hình 4: Sơ đồ các cuộn dây
Để tạo chuyển động quay của động cơ bước, về mặt logic có 3 cách : điều khiển cả
bước, điều khiển nửa bước và điều khiển vi bước. Hai cách đầu tiên chỉ cần điều khiển theo thứ
tự cấp xung cho các cuộn dây, còn cách thứ ba liên quan đến thay đổi dòng điện để tạo những
dịch chuyển rất nhỏ gần như vô cấp cho động cơ, khá phức tạp. Trong đồ án này nhóm chọn
cách điều khiển nửa bước để thực hiện điều khiển. Việc điều khiển được thưc hiện bằng việc
cấp xung lần lượt cho các đầu dây ABCD, đầu com được đấu nối với nguồn 5V, cụ thể như
sau:
Quay thuận một vòng Quay nghịch một vòng
Thứ tự các đầu
dây
Giá trị logic
Thứ tự các đầu dây Giá trị logic
ACBD
1100
ACBD
0011
0110 0110
0011 1100
1001 1001
2. Mạch công suất điều khiển động cơ:
Mạch điều khiển động cơ bước với phần lõi là 8 linh kiện IRF540N, đảm nhận vai trò
điều khiển 2 động cơ trái, phải. Sau đây là sơ đồ mạch nguyên lý:
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 13
Hình 5: Sơ đồ mạch nguyên lý
Hình 6: Mạch công suất trên thực tế
Ưu điểm của mạch: Đơn giản, dễ thực hiện, mạch có khả năng tải được công suât lớn (Điện áp
định mức là 100V, Dòng định mức 10A).
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 14
3. Bo mạch chính:
Mạch giao tiếp RS232: Mạch gồm linh kiện chính là cổng COM DB9 với IC MAX232 để thực
hiện chuyển đổi tương thích điện áp giữa cổng COM trên máy tính và điện áp điện áp tín hiệu
trên mạch điều khiển. Làm nhiệm vụ giao tiếp giữa máy tính và vi điều khiển. Sơ đồ mạch như
sau:
Hình 7: Sơ đồ mạch giao tiếp RS232 và vi điều khiển
Hình 8: Mạch điều khiển
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 15
B. PHẦN MỀM:
Để lập trình điều khiển chip AT89S52 ta dùng phần mềm Keil uVision2 phiên bản
7.08. Việc lập trình có hai nhiệm vụ chính sau:
Lập trình thu phát dữ liệu
Lập trình điều khiển động cơ bước
1. Điều khiển thu phát dữ liệu:
Đối với các chip vi điều khiển hiện nay, việc thu phát dữ liệu có thể thực hiện được nhờ
một chip UART tích hợp bên trong qua hai đường truyền thông nối tiếp là TxD và RxD trên vi
điều khiển. Thường hai đường này nằm trùng với 2 chân làm nhiệm vụ xuất/nhập dữ liệu thông
thường, chỉ được sử dụng trong trường hợp truyền nhận nối tiếp khi được set chế độ thích hợp
bằng phần mềm. Việc thu phát dữ liệu của vi điều khiển theo 2 phương thức:
a) Thăm dò : đối với việc thu dữ liệu, vi điều khiển không làm gì cả, chỉ chờ việc dữ
liệu gửi đến bộ đệm thu, thực thi nhiệm vụ tương ứng với dữ liệu đó – cũng chính là lệnh điều
khiển được gửi đến vi điều khiển từ DTE phát. Đối với việc phát dữ liệu, vi điều khiển chờ dữ
liệu được đưa vào bộ đệm phát và phát tín hiệu sẵn sàng cho việc gửi dữ liệu. Sau khi thực thi
chương trình tương ứng, vi điều khiển lại quay về chờ dữ liệu được đưa vào bộ đệm để chuyển
đến chương trình kế tiếp. Việc này tuy thực hiện đơn giản nhưng lại mất thời gian trong việc
chờ đợi dữ liệu.
b) Ngắt nối tiếp :
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 16
Phương thức này khắc phục được nhược điểm của phương thức thăm dò nêu trên, đó là
loại bỏ thời gian vô ích trong việc chờ dữ liệu được đưa đến bộ đệm thu/phát. Trong khi
chương trình chính của ta đang thực thi, thì một ngắt thu/phát do dữ liệu được đưa đến bộ đệm
ở trạng thái sẵn sàng cho việc thực thi chương trình ngắt nối tiếp xảy ra, chương trình nhảy đến
chương trình ngắt tương ứng để thực hiện, xong đâu đấy nó lại quay về điểm bị ngắt và thực
thi tiếp. Trong 8051 có thanh ghi điều khiển ngắt IE, sẽ điều khiển được 5 ngắt tương ứng, đó
là 2 ngắt do bộ định thời, 2 ngắt ngoài, 1 ngắt nối tiếp. Trong phạm vi nghiên cứu của đồ án
này nhóm chỉ đưa ra những thuộc tính của ngắt do port nối tiếp. Để khai báo việc sử dụng ngắt
nối tiếp, ta set bit EA là bit thứ 7 của thanh ghi IE để cho phép ngắt, và bit ES là bit thứ 4 của
thanh ghi IE cho phép ngắt nối tiếp. Khi xảy ra một ngắt (thu hoặc phát) cờ ngắt RI hoặc TI
được set lên, chương trình nhảy đến ngắt thích hợp và thực thi nó. Vì cờ nhớ không tự xóa nên
người lập trình phải xóa bằng thuật toán trên vi điều khiển để chương trình có thể thực hiện các
ngắt tiếp theo.
Lưu ý : trong chương trình thuộc nội dung đồ án, dữ liệu được xuất ra ở cổng COM ở
dạng kí tự và dữ liệu nhận vào chip cũng ở dạng kí tự, nên để đồng bộ hóa việc thu phát dữ liệu
và dễ dàng trong việc lập trình, nhóm sử dụng các kí tự theo thứ tự tùy chọn trên giao diện
thiết kế để gửi và nhận tín hiệu trên cả VB lẫn chip, đó là :
“1” : Chế độ 1 – động cơ 1 quay thuận
“2” : Chế độ 2 – động cơ 1 quay nghịch
“3” : Chế độ 3 – động cơ 2 quay thuận
“4” : Chế độ 4 – động cơ 2 quay nghịch
“5” : Chế độ 5– Trạng thái giữ
“6” Chế độ 6 – Khởi tạo vịt trí 0
Để thực hiện việc thu và phát tín hiệu giao tiếp giữa vi điều khiển, nhóm sử dụng ngắt
nối tiếp của vi điều khiển AT89S52, tốc độ baudrate là 1200 bits/s.
2. Điều khiển động cơ bước:
Để điều khiển động cơ, nhóm đưa ra các chế độ cấp tín hiệu điều khiển cho các đầu dây
theo kiểu đơn cực phụ thuộc vào đầu dây được cấp tín hiệu. Đối với động cơ bước có 4 đầu
dây thì số lượng đầu được cấp tín hiệu cho 1 lần dịch bước tối đa là 3. Việc này trong các ứng
dụng thực tế cần điều khiển nhiều thiết bị khác nhau sẽ gây nên lãng phí chân, tuy nhiên trong
một ứng dụng nhỏ thuộc nội dung đồ án này thì nó sẽ đơn giản hơn cho việc điều khiển và
cũng không bị giới hạn về số lượng chân nên nhóm chọn cách điều khiển đơn cực để tạo
chuyển động quay của động nửa bước. Như đã trình bày ở phần trên tạo chuyển động quay cho
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 17
các động cơ ta cần cấp tín hiệu lần lượt cho các đầu dây việc này được thực hiện bằng cách cho
các PORT nhận lần lượt các giá trị trong một mảng cho trước. Cụ thể là:
const unsigned char a[4]={0x0c,0x06,0x03,0x09};//mảng dự liệu
case '1': //động cơ 1 quay thuận
P2_0 =~P2_0;
if (j<=3){P0=a[j];delay(5);j=j+1;}
if (j>3){j=0;}
break;
case '2': //dong co 1 quay nghich
P2_0 = 0; k=k-1;
if(k<0){P0=a[3];delay(5);k=3;}
if (k<=3){P0=a[k];delay(5);}
break;
case '3'://dong co 2 quay thuan
P2_0 = 0; h=h+1;
if (h<=3){P1=a[h];delay(5);}
if(h>3){P1=a[0];delay(5);h=0;}
break;
case '4'://dong co 2 quay nghich
P2_0 = 0; g=g-1;
if (g<=3){P1=a[g];delay(5);}
if(g<0){P1=a[3];delay(5);g=3;}
break;
case '5'://trang thai dung
delay(10);
break;
case’6’: //khoi tao vi tri O
while(P2_4==1)
{g=g-1;
if(g<0){P1=a[3];delay(25);g=3;}
if (g<=3){P1=a[g];delay(5);}}
while(P2_3==1)
{
k=k-1;
if(k<0){P0=a[3];delay(25);k=3;}
if (k<=3){P0=a[k];delay(25);}}
default:
break;
}}}}
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 18
2.4/ Phần mềm điều khiển và lập trình:
2.4.1/ Nhiệm vụ:
Hệ thống sẽ sử dụng phương pháp nhận biết mặt trời bằng cách chụp ảnh qua một
webcam. Phần xử lý ảnh sẽ do Matlab thực hiện. Webcam sẽ chụp một bức ảnh có mặt trời
như sau:
Hình 9: Ảnh mặt trời qua xử lý Matlab
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 19
Ảnh sẽ được chuyển sang chế độ nhị phân như hình dưới. Trong đó vùng sáng mặt trời
sẽ có giá trị 1 và vùng xung quanh tối sẽ có giá trị 0. Từ vùng giá trị 1 ta xác định được tâm
của vùng và cũng sẽ là tâm của mặt trời. Nhiệm vụ của Matlab sẽ là xác định tâm đó, xuất ra
các xung để vi điều khiển nhận biết và điều khiển động cơ cho phù hợp.
Webcam chụp một ảnh với độ phân giải là 160x120 pixel. Vậy điểm tâm của ảnh là
(80,60). Động cơ quay góc xác định là 1,8
0
, tỷ số truyền của cặp bánh răng là
, vậy mỗi bước
góc quay của trục thẳng đứng là 0,72
0
. Tỷ số truyền của bộ truyền đai là
, vậy mỗi bước góc
quay của trục nằm ngang là 0,57
0
.Qua thực nghiệm ta thấy mỗi bước chuyển động, tọa độ ảnh
thay đổi là 5 pixel. Ta chọn vùng tâm mặt trời là 75-85 và 55-65. Độ lệch lớn nhất là 5 pixel
mỗi trục, vậy góc lệch tương ứng với từng trục là 0,72
0
và 0,57
0
.
Tính theo tọa độ vị trí tại thủ đô Hà Nội là 21
0
02’ Bắc và 105
0
51’ Đông, vào những ngày
tháng 6 thì cứ khoảng 3 phút thì mặt trời quay một góc xấp xỉ 0,7
0
. Vậy cứ 3 phút thì hệ thống
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 20
mới chuyển động một lần. Với điều kiện như thế thì đảm bảo việc luôn bắt kịp với tốc độ di
chuyển mặt trời.
2.4.2/ Giới thiệu phần mềm Matlab:
Chương trình MATLAB là một chương trình viết cho máy tính PC nhằm hỗ trợ cho các
tính toán khoa học và kĩ thuật với các phần tử cơ bản là ma trận trên máy tính cá nhân do công
ty "The MATHWORKS" viết ra.
Thuật ngữ MATLAB có được là do hai từ MATRIX và LABORATORY ghép lại.
Chương trình này hiện đang được sử dụng nhiều trong nghiên cứu các vấn đề tính toán của các
bài toán kĩ thuật như: Lý thuyết điều khiển tự động, kĩ thuật thống kê xác suất, xử lý số các tín
hiệu, phân tích dữ liệu, dự báo chuổi quan sát, v.v…
MATLAB được điều khiển bởi các tập lệnh, tác động qua bàn phím. Nó cũng cho phép
một khả năng lập trình với cú pháp thông dịch lệnh – còn gọi là Script file. Các lệnh hay bộ
lệnh của MATLAB lên đến số hàng trăm và ngày càng được mở rộng bởi các phần TOOLS
BOX( thư viện trợ giúp) hay thông qua các hàm ứng dụng được xây dựng từ người sử dụng.
MATLAB có hơn 25 TOOLS BOX để trợ giúp cho việc khảo sát những vấn đề có liên quan
trên. TOOL BOX SIMULINK là phần mở rộng của MATLAB, sử dụng để mô phỏng các hệ
thống động học một cách nhanh chóng và tiện lợi.
2.4.3/ Giao diện điều khiển:
Hình 10: Giao diện điều khiển trên Matlab
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 21
Giao diện được thiết kế bằng phần GUI (Graphical User Interfaces). Giao diện gồm 18
nút bấm, 2 edit text, 1 popup menu, 1 axes. Các phần của giao diện cụ thể gồm có:
- Phần ảnh hiển thị.s
- Phần chọn cổng COM.
- Phần điều khiển bằng tay gồm các nút manual, left, right, up, down.
- Phần chế độ chuẩn, gồm các các nút start và stop.
- Phần theo thời gian, gồm các nút : load, run, return, clear.
- Phần chế độ phụ, gồm các nút : record, repeat, return, delete.
- Phần hiển thị 2 tọa độ tâm.
- Núp chụp nhanh để xác định tâm mặt trời hiện tại.
- Nút Return 0: để điều khiển hệ thống về điểm gốc 0.
2.4.4/ Các chế độ điều khiển:
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 22
Bước đầu tiên của việc điều khiển là lựa chọn cổng COM. Có 3 giá trị COM là COM4,
COM5 và COM7 để lựa chọn với tốc độ là 1200 bps. Việc lựa chọn cổng COM sẽ phụ thuộc
vào vị trí của dây cắm trên máy.
Có 3 chế độ điều khiển chính là: chế độ bằng tay, chế độ chạy tự động, chế độ chạy theo
thời gian. Có một chế độ chạy phụ. Tùy vào điều kiện thời tiết và mục đích mà lựa chọn các
chế độ cho phù hợp.
1) Chế độ tự động.
Chế độ tự động là chế độ chuẩn của việc định hướng mặt trời. Chế độ gồm 2 nút start và
stop. Nút start để bắt đầu chế độ điều chỉnh, và nút stop để dừng lại.
a) Thuật toán điều khiển.
Việc đưa ảnh về nhị phân và xác định tâm sẽ cho ta 2 tọa độ của tâm mặt trời là tọa độ
1 và tọa độ 2. Mục tiêu của chế độ là đưa tọa độ 1 về trong khoản 75-85 và tọa độ 2 về
trong khoản 55-65. Thuật toán được trình bày như sau.
Giải thích thuật toán: Khi ta ấn start, webcam sẽ chụp ảnh. Nếu xác định là không có
mặt trời trong khung hình thì sẽ chụp lại. Nếu đã xác định được mặt trời trong khung hình,
sẽ xác định 2 tọa độ tâm mặt trời và hiển thị ở 2 khung dưới. Ta sẽ đưa tọa độ 1 về khoảng
yêu cầu trước rồi sẽ tiến hành đưa tọa độ 2.
Nếu tọa độ 1 nhỏ hơn 75 sẽ xuất xung 4, nếu tọa độ 1 lớn hơn 85 sẽ xuất xung 3. Giá trị
3 hoặc 4 sẽ giúp vi điều khiển nhận biết để điều khiển chiều động cơ dưới sao cho đúng.
Nếu tọa độ 2 nhỏ hơn 55 sẽ xuất xung 2, nếu tọa độ 2 lớn hơn 65 sẽ xuất xung 1.
Hình 11: Thuật toán điều khiển chế độ tự động
Bắt đầu
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 23
Không
Có
Có
Có
Có
b) Code.
Chụp ảnh
Có mặt trờ
i ?
Tọa độ trong
khoản 75-
85?
Tọa độ 2 trong
khoản 55-
65?
Về tâm
Khởi tạo vị
trí 0 chạy
cả 2 động
cơ
Tọa độ 1
l
ớ
n hơn 85
Chạy động cơ 1
theo chiều nghịch
Tọa độ 1
nh
ỏ
hơn 75
Chạy động cơ 1
theo chiều thuận
Tọa độ 2
l
ớ
n hơn 85
Chạy động cơ 2
theo chiều nghịch
Tọa độ 2
nh
ỏ
hơn 55
Chạy động cơ 2
theo chiều thuận
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 24
Code gồm có các phần chính như sau:
- Phần kết nối webcam.
vid=videoinput('winvideo',2,'YUY2_160x120')
set(vid,'FramesPerTrigger',Inf)
set(vid,'ReturnedColorSpace','grayscale')
- Phần chụp ảnh và xác định tâm:
A=getsnapshot(vid)
bw=im2bw(A,0.9)
label=bwlabel(bw)
C=regionprops(label,'area')
maxarea=max([C.Area])
mattroi=find([C.Area]==maxarea)
B=regionprops(label,'centroid')
[D,num]=bwlabel(bw,4)
- Phần xuất xung, ví dụ xuất xung4:
fprintf(s,'%s','4','async')
2) Chế độ điều khiển bằng tay.
Trong trường hợp webcam chưa bắt trúng mặt trời thì ta có thể điều khiển cả hệ thống
theo chế độ bằng tay.
Chế độ gồm 4 nút bấm. Mỗi nút ấn left, right, up và down tương ứng với các xung 1, 2,
3 và 4. Mỗi lần ấn nút là sẽ xuất ra 1 xung và động cơ sẽ quay 1 góc là 1,8
0
.
3) Chế độ theo thời gian.
Theo chế độ này, Matlab sẽ xuất ra một xung nhất định trong một thời điểm nhất định
đã được lưu từ trước. Ứng dụng của chế độ này sẽ là vào những ngày không có mặt trời và
Thiết kế, chế tạo hệ điều khiển định hướng pin mặt trời Page 25
những thời điểm mặt trời tạm biến mất. Chế độ này yêu cầu một bảng lưu giá trị thời gian
và xung xuất của thời điểm đó. Ta sẽ tạo biến đó bằng một chương trình lưu thời gian sẽ
trình bày sau.
Yêu cầu thực hiện của chế độ này là tại vị trí bắt đầu là vị trí đã bắt được mặt trời đúng
thời điểm hoặc là điểm gốc của một ngày. Đầu tiên là ta sẽ ấn nút Load để load file lưu
xung theo thời gian. Sau đó ấn Run để bắt đầu chạy. Khi ấn Run, Matlab sẽ đếm theo thời
gian thực của máy tính. Mỗi khi thời gian thực máy tính trùng với thời gian lưu thì sẽ xuất
xung tương ứng với thời gian đó.
Khi muốn dừng chạy có thể ấn Stop ở phần chế độ tự động. Muốn quay lại điểm bắt
đầu một ngày có thể ấn Return. Còn muốn xóa để bắt đầu lại thì chọn nút Clear.
Hình 12: Chương trình lưu thời gian.
Chương trình lưu thời gian có những chức năng tự động và ghi nhớ lại quá trình. Với
chương trình này ta không bắt buộc phải thực hiện quá trình ghi liền trong một ngày mà có
thể save lại và ngày hôm sau load ra để ghi tiếp. Chương trình sẽ lưu bảng vào một file
MAT và có thể mở bằng chương trình chính.
4) Chế độ phụ.
Chế độ phụ gồm có các chức năng: tự động bắt mặt trời, ghi lại quá trình bắt, trở lại
điểm xuất phát và tự động lặp lại y hệt quá trình trước. Về cơ bản chế độ phụ hoạt động
như chế độ thời gian, chỉ khác nhau ở chỗ chế độ phụ tự ghi lại theo thời gian tương đối,
gốc thời gian là thời điểm bắt đầu.