Tải bản đầy đủ (.pdf) (60 trang)

NGHIÊN CỨU VÀ THIẾT KẾ HỆ THỐNG CHIẾU SÁNG THÔNG MINH CHO KHUÔN VIÊN TRƯỜNG ĐẠI HỌC QUẢNG NAM

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

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>UBND TỈNH QUẢNG NAM TRƯỜNG ĐẠI HỌC QUẢNG NAM </b>

<b>KHOA LÝ – HÓA – SINH </b>

<b>KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC </b>

<b>Tên đề tài: NGHIÊN CỨU VÀ THIẾT KẾ HỆ THỐNG CHIẾU SÁNG THÔNG MINH CHO KHUÔN VIÊN </b>

<b>TRƯỜNG ĐẠI HỌC QUẢNG NAM </b>

Sinh viên thực hiện:

<b>PHAN HOÀI SINH </b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>PHẦN 1:MỞ ĐẦU 1. Lý do chọn đề tài </b>

Ngày này, trong sự phát triển mạnh mẽ của khoa học cơng nghệ nói chung và ngành công nghệ kỹ thuật điện tử nói riêng đã góp phần làm cho cuộc sống ngày càng hiện đại và văn minh hơn. Sự phát triển của kỹ thuật điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm như chính xác cao, tốc độ nhanh, gọn nhẹ, hoạt động ổn định và là những yếu tố cần thiết để phục vụ cuộc sống của con người hiệu quả hơn.Trong đó cảm biến là một thiết bị điện tử được sử dụng trong các ngành công nghiệp cũng như dân dụng như những thiết bị để cảm nhận và phát hiện các đối tượng, một trong các đối tượng được quan tâm đó chính là ánh sáng. Cùng với sự phát triển của xã hội, cơ sở hạ tầng bao gồm các hệ thống chiếu sáng được xây dựng tiêu thụ một lượng lớn điện năng tồn cầu. Do đó tiết kiệm năng lượng đang là một chương trình hành động quyết liệt đối với nhiều quốc gia trên thế giới nói chung và Việt Nam nói riêng. Lĩnh vực chiếu sáng chiếm khoảng 15-20% điện năng toàn cầu, do vậy yêu cầu chiếu sáng có hiệu quả, tiết kiệm năng lượng là một yêu cầu vừa cấp bách vừa lâu dài. Để thực hiện triệt để việc tiết kiệm điện trong chiếu sáng, cần thiết phải thực hiện đồng bộ ba yếu tố: Sử dụng các loại nguồn sáng có hiệu suất cao trong chiếu sáng, xây dựng hệ thống tự động điều khiển chiếu sáng sử dụng các cảm biến đảm bảo mơi trường hoạt động tiện ích và nguồn sáng của bóng đèn cần được sử dụng đúng mục đích, đúng thời điểm, đúng nhu cầu đáp ứng tiết kiệm điện năng tối đa.

Thực tế tại trường Đại học Quảng Nam cho thấy việc chiếu sáng vẫn còn nhiều bất cập cần được cải thiện. Hiện nay khuôn viên trường khá lớn và chia làm nhiều khu vì thế việc bố trí điện chiếu sang tại các khu cần hợp lý, đảm bảo chiếu sáng phù hợp đồng thời tiết kiệm và chính xác.

<i>Với đề tài “NGHIÊN CỨU VÀ THIẾT KẾ HỆ THỐNG CHIẾU SÁNG THÔNG MINH CHO KHUÔN VIÊN TRƯỜNG ĐẠI HỌC QUẢNG NAM.” sẽ </i>

giải đáp các vấn đề cơ bản về chiếu sáng, áp dụng những tính chất của cảm biến ánh sáng để xây dựng nên hệ thống chiếu sáng giải quyết mục tiêu tiết kiệm điện năng cũng như đảm bảo tối đa tiện nghi chiếu sáng trong khuôn viên trường ĐH

<i>Quảng Nam. </i>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>2. Mục tiêu nghiên cứu </b>

- Nghiên cứu hoạt động của cảm biến ánh sáng, vi điều khiển và một số linh kiên liên quan.

- Chế tạo hệ thống chiếu sang thông minh cho khuôn viên trường ĐH Quảng Nam.

<b>3. Nhiệm vụ nghiên cứu </b>

- Nghiên cứu nguyên lý hoạt động của cảm biến ánh sáng.

- Nghiên cứu hoạt động của vi điều khiển và một số linh kiện liên quan. - Nghiên cứu cơ chế hoạt động của bộ hẹn giờ bật tắt thiết bị.

- Nghiên cứu sử dụng phầm mềm trong việc điều khiển hệ thống chiếu sáng.

- Đưa ra mơ hình chiếu sáng thông minh trong thực tế.

<b>4. Đối tượng và phạm vi nghiên cứu </b>

- Đối tượng nghiên cứu : Hệ thống chiếu sáng thông minh.

- Phạm vi nghiên cứu: Hệ thống chiếu sáng thông minh cho khuôn viên trường ĐH. Quảng Nam.

<b>5. Giả thuyết khoa học </b>

- Hệ thống chiếu sáng thông minh sẽ giúp tiết kiệm được một lượng điện năng đáng kể cho nhà trường.

<b>6. Phương pháp nghiên cứu đề tài 6.1. Phương pháp nghiên cứu lí thuyết </b>

- Nghiên cứu các mơ hình đã thành cơng trước đây về vấn đề ứng dụng cảm

- Nghiên cứu các mô hình chiếu sáng cơng cộng.

- Khảo sát thực tế việc chiếu sáng ở trường ĐH. Quảng Nam.

<b>6.3. Phương pháp thực nghiệm </b>

Tiến hành xây dựng một mô hình mẫu để đánh giá tính khả quan.

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

1.3. Quang trở

1.4. Vi điều khiển AT89S52 1.5. Led 7 đoạn

1.6. Đồng hồ thời gian thực DS1307 1.7. Rơ le 5 chân

1.8. Phần mềm Proteus 7.10

<b>Chương 2: Thiết kế mạch điện điều khiển hệ thống chiếu sáng </b>

2.1. Sơ đồ mạch điện 2.1.1. Sơ đồ khối 2.1.2. Sơ đồ nguyên lý

2.1.3. Mạch điện thiết kế chi tiết 2.2. Thuật toán điều khiển 2.2.1. Sơ đồ thuật toán 2.2.2. Nguyên lý điều khiển

2.2.3. Cấu trúc chương trình điều khiển

<b>Chương 3:Mơ phỏng mạch điện và thiết kế hệ thống chiếu sáng thông minh </b>

3.1. Mô phỏng mạch điện 3.1.1. Mạch điện và mô phỏng 3.1.2. Kết quả mô phỏng

3.2. Thiết kế hệ thống bố trí chiếu sáng khn viên trường 3.2.1. Phương án bố trí

3.2.2. Đánh giá hiệu quả hệ thống

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

Thạch anh trên sơ đồ hoặc bo mạch in sẽ có ký hiệu là XT, OSC hoặc là X, hoặc là Crystal. Ký hiệu hình vẽ của nó trên sơ đồ như hình dưới đây.

<i>Hình 1.1: Biểu tượng điện tự bộ dao động thạch anh </i>

Các thạch anh trong thực tế có rất nhiều hình dáng khác nhau nhưng được đóng gói theo hai chuẩn đó là thạch anh vỏ sắt và thạch anh bỏ gốm. Số chân của thạch anh cũng tùy vào từng loại, từ 2 chân cho đến 4 chân.

Về bản chất thạch anh có thể được coi là một mạch dao động RLC. Thạch anh có thể kết hợp với Transistor, kết hợp với các cổng điện tử số hoặc kết hợp với vi xử lý để tạo ra các dao động.

<b>1.2. Transistor </b>

Trong điện tử transistor là một linh kiện bán dẫn, khi hoạt động trong mạch điện tử, transistor có vai trị như một cái van cách li điều chỉnh dòng điện, điện áp trong mạch. Nhờ vai trò quan trọng này transistor được ứng dụng rộng rãi.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>Về cấu tạo Transistor </b>

Transistor gồm ba lớp bán dẫn ghép với nhau hình thành hai mỗi tiếp giáp P- N, nếu ghép theo thứ tự PNP ta được transistor thuận, nếu ghép theo thứ tự NPN ta được transistor ngược. Về cấu tạo, transistor tương đương với hai diode đấu ngược chiều nhau.

<i>Hình 1.2: Cấu tạo của hai loại transistor </i>

Theo hình trên ba lớp bán dẫn được nối ra thành ba cực, cực gốc ký hiệu là B, lớp bán dẫn B có rất mỏng và có nồng độ tạp chất thấp.

Hai lớp bán dẫn bên ngoài được nối ra thành cực phát Emitter viết tắt là E, cực thu hay cực góp viết tắt là C (collector) viết tắt là C. vùng bán dẫn E và C có cùng loại bán dẫn nhưng kích thước và nồng độ tạp chất lại khác nhau nên chúng khơng thể hốn đổi vị trí cho nhau.

<b>Nguyên tắc hoạt động </b>

<b>Xét hoạt động của Transistor NPN </b>

<i>Hình 1.3: Sơ đồ nguyên lý hoạt động của transistor NPN </i>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<small>• </small>Ta cấp một nguồn một chiều U<small>CE</small> vào hai cực C và E trong đó (+) nguồn vào cực C và (-) nguồn vào cực E.

<small>• </small>Cấp nguồn một chiều U<small>BE</small> đi qua cơng tắc và trở hạn dịng vào hai cực B và E , trong đó cực (+) vào chân B, cực (-) vào chân E.

<small>• </small>Khi cơng tắc mở , ta thấy rằng, mặc dù hai cực C và E đã được cấp điện nhưng vẫn không có dịng điện chạy qua mối C E ( lúc này dịng IC= 0 )

<small>• </small>Khi cơng tắc đóng, mối P-N được phân cực thuận do đó có một dịng điện chạy từ (+) nguồn U<small>BE</small> qua cơng tắc => qua R hạn dòng => qua mối BE về cực (-) tạo thành dịng IB

<small>• </small>Ngay khi dịng IB xuất hiện => lập tức cũng có dịng IC chạy qua mối CE làm bóng đèn phát sáng, và dịng IC mạnh gấp nhiều lần dịng IB

<small>• </small>Như vậy rõ ràng dịng IChồn tồn phụ thuộc vào dịng IB và phụ thuộc theo một cơng thức IC = β.IB

Trong đó IC là dịng chạy qua mối CE <small>• </small>IB là dịng chạy qua mối BE

<small>• </small>β là hệ số khuyếch đại của Transistor

<b> Giải thích : Khi có điện áp U</b><small>CE</small> nhưng các điện tử và lỗ trống không thể vượt qua mối tiếp giáp P-N để tạo thành dòng điện, khi xuất hiện dòng I<small>BE</small> do lớp bán dẫn P tại cực B rất mỏng và nồng độ pha tạp thấp, vì vậy số điện tử tự do từ lớp bán dẫn N ( cực E ) vượt qua tiếp giáp sang lớp bán dẫn P( cực B ) lớn hơn số lượng lỗ trống rất nhiều, một phần nhỏ trong số các điện tử đó thế vào lỗ trống tạo thành dòng IB còn phần lớn số điện tử bị hút về phía cực C dưới tác dụng của điện áp U<small>CE</small> => tạo thành dòng I<small>CE</small> chạy qua Transistor.

<b>Xét hoạt động của Transistor PNP </b>

Sự hoạt động của Transistor PNP hoàn toàn tương tự Transistor NPN nhưng cực tính của các nguồn điện U<small>CE</small> và U<small>BE</small> ngược lại . Dòng IC đi từ E sang C còn dòng IB đi từ E sang B.

<b>Transistor C1815 </b>

Transistor C1815 là transistor thuộc loại transistor NPN. Thông số kỹ thuật Transitor C1815 :

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Dải nhiệt độ cho phép -55 ~ +150 <small>o</small>C Tổng cơng suất (Ta=25<small>o</small>C) 400mW Điện áp và dịng cực đại

• VCBO điện áp cực C sang B 60 V • VCEO điện áp cực C sang E 50 V • VEBO điện áp cực E sang B 5 V • IC dịng cực góp 150 mA

• VCBO điện áp cực C sang B -50 V • VCEO điện áp cực C sang E -50 V • VEBO điện áp cực E sang B -5 V • IC dịng cực C(cực góp) -150 mA

<b>1.3. Quang trở CDS cảm biến ánh sáng </b>

Quang trở là điện trở có trị số càng giảm khi được chiếu sáng càng mạnh. Điện trở tối (khi không được chiếu sáng - ở trong bóng tối) thường trên 1M, trị số này giảm rất nhỏ có thể dưới 100 ôm khi được chiếu sáng mạnh

Quang trở hoạt động dựa trên ứng dụng của chất bán dẫn, thường là Cadmium sulfide – CdS hoặc Cadmium selenide – CdSe. Khi chiếu ánh sáng thích hợp vào lớp bán dẫn thì sẽ làm xuất hiện các điện tử tự do và điều này cho phép dịng điện chạy qua nó.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<i>Hình 1.4: Cấu tạo của quang trở </i>

Độ nhạy của quang trở phụ thuộc vào chất liệu bán dẫn làm ra nó.

<b>1.4. Vi điều khiển AT89S52 </b>

Hiện nay có rất nhiều họ vi điều khiển trên thị trường với nhiều ứng dụng khác nhau, trong đó họ vi điều khiển họ MCS-51 được sử dụng rất rộng rãi trên thế giới và ở Việt Nam.

Vào năm 1980 Intel cơng bố chíp 8051(80C51), bộ vi điều khiển đầu tiên của họ vi điều khiển MCS-51. Nó bao gồm 4KB ROM, 128 byte RAM, 32 đường xuất nhập, 1 port nối tiếp và 2 bộ định thời 16 bit. Tiếp theo sau đó là sự ra đời của chip 8052,8053,8055 với nhiều tính năng được cải tiến

Sau khoảng thời gian cải tiến và phát triển, hãng Atmel tung ra thị trường dòng Vi điều khiển mang số hiệu 89Sxx với nhiều cải tiến và đặc biệt là có thêm khả năng nạp chương trình theo chế độ nối tiếp rất đơn giản và tiện lợi cho người sử dụng.

<i>Bảng 1.1: Thông số của dòng VĐK 89SXX </i>

<b>1.4.1. Sơ lược phần cứng vi điều khiển-giao tiếp bên ngồi </b>

• Khảo sát sơ đồ chân

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Mặc dù các thành viên của họ MSC-51 có nhiều kiểu đóng vỏ khác nhau, chẳng hạn như hai hàng chân DIP (Dual In-line Pakage) dạng vỏ dẹt vuông QFP (Quad Flat Pakage) và dạng chíp khơng có chân đỡ LLC (Leadless Chip Carrier) và đều có 40 chân cho các chức năng khác nhau như vào ra I/0, đọc, ghi, địa chỉ, dữ liệu và ngắt. Tuy nhiên, vì hầu hết các nhà phát triển chính dùng chíp đóng vỏ 40 chân với hai hàng chân DIP, nên chúng ta cùng khảo sát Vi điều khiển với 40 chân dạng DIP.

<i>Hình 1.5: Sơ đồ chân của vi điều khiển </i>

- Chân VCC: Chân số 40 là VCC cấp điện áp nguồn cho Vi điều khiển. Nguồn điện cấp là +5V±0.5.

- Chân GND: Chân số 20 nối GND(hay nối Mass). Khi thiết kế cần sử dụng một mạch ổn áp để bảo vệ cho Vi điều khiển, cách đơn giản là sử dụng IC ổn áp 7805.

- Port 0 (P0): Port 0 gồm 8 chân (từ chân 32 đến 39) có hai chức năng:

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Chức năng xuất/nhập: các chân này được dùng để nhận tín hiệu từ bên ngồi vào để xử lí, hoặc dùng để xuất tín hiệu ra bên ngồi, chẳng hạn xuất tín hiệu để điều khiển led đơn sáng tắt. Chức năng là bus dữ liệu và bus địa chỉ (AD7-AD0) : 8 chân này (hoặc Port 0) còn làm nhiệm vụ lấy dữ liệu từ ROM hoặc RAM ngoại (nếu có kết nối với bộ nhớ ngồi), đồng thời Port 0 cịn được dùng để định địa chỉ của bộ nhớ ngoài.

- Port 1 (P1): Port 1 gồm 8 chân (từ chân 1 đến chân 8), chỉ có chức năng làm các đường xuất/nhập, khơng có chức năng khác.

- Port 2 (P2): Port 2 gồm 8 chân (từ chân 21 đến chân 28) có hai chức năng: Chức năng xuất/nhập Chức năng là bus địa chỉ cao (A8-A15): khi kết nối với bộ nhớ ngồi có dung lượng lớn, cần 2 byte để định địa chỉ của bộ nhớ, byte thấp do P0 đảm nhận, byte cao do P2 này đảm nhận.

- Port 3 (P3): Port 3 gồm 8 chân (từ chân 10 đến 17): Chức năng xuất/nhập Với mỗi chân có một chức năng riêng thứ hai như trong bảng sau:

<i>Bảng 1.2: Chức năng của Port 3 </i>

- Chân RESET (RST): Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho vi điều khiển. Hệ thống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ này ở mức 1 tối thiểu 2 chu kì máy.

- Chân XTAL1 và XTAL2: Hai chân này có vị trí chân là 18 và 19 được sử dụng để nhận nguồn xung clock từ bên ngoài để hoạt động, thường được ghép

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

nối với thạch anh và các tụ để tạo nguồn xung clock ổn định.

- Chân cho phép bộ nhớ chương trình PSEN (Program Store Enable): tín hiệu được xuất ra ở chân 29 dùng để truy xuất bộ nhớ chương trình ngồi. Chân này thường được nối với chân OE (output enable) của ROM ngoài. Khi vi điều khiển làm việc với bộ nhớ chương trình ngồi, chân này phát ra tín hiệu kích hoạt ở mức thấp và được kích hoạt 2 lần trong một chu kì máy. Khi thực thi một chương trình ở ROM nội, chân này được duy trì ở mức logic khơng tích cực (logic 1) (Không cần kết nối chân này khi không sử dụng đến)

- Chân ALE (chân cho phép chốt địa chỉ-chân 30) có chức năng là bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ. Tín hiệu ở chân ALE dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối chúng với IC chốt. Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào Vi điều khiển, như vậy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock cung cấp cho các phần khác của hệ thống. Ghi chú: khi không sử dụng có thể bỏ trống chân này

- Chân EA: Chân EA dùng để xác định chương trình thực hiện được lấy từ ROM nội hay ROM ngoại. Khi EA nối với logic 1(+5V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ nội Khi EA nối với logic 0(0V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ ngoại

<b>• Kết nối phần cứng </b>

Kết nối trên hai chân XTAL1 và XTAL2.

Mạch dao động được đưa vào hai chân này thông thường được kết nối với dao động thạch anh như sau:

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<i>Hình 1.6: Sơ đồ kết nối của hai chân XTAL </i>

Ghi chú: C1,C2= 30pF±10pF (thường được sử dụng với C1,C2 là tụ 33pF) dùng ổn định dao động cho thạch anh. Hoặc có thể cấp tín hiệu xung clock lấy từ một mạch tạo dao động nào đó và đưa vào Vi điều khiển theo hình 1.3. Trong đó NC: để trống, chân XTAL2 để trống.

Gọi f<small>zat</small> là tần số dao động của thạch anh. Đối với 89Sxx có thể sử dụng thạch anh có tần số fzat từ 2MHz đến 33MHz. Chu kì máy là khoảng thời gian cần thiết được qui định để Vi điều khiển thực hiện hoàn thành một lệnh cơ bản. Một chu kì máy bằng 12 lần chu kì dao động của nguồn xung dao động cấp cho nó.

T<small>ck</small> = 12.T<small>oc </small>

Với: T<small>ck</small> là chu kì máy

T<small>oc</small> là chu kì của nguồn xung dao động cấp cho Vi điều khiển. Như vậy:

Với: T<small>ck</small> là chu kì máy

f<small>oc</small> là tần số dao động cấp cho Vi điều khiển.

Ví dụ: Ta kết nối Vi điều khiển với thạch anh có tần số f<small>zat</small> = 12MHz, thì chu kì máy Tck=12/(12.10<small>6</small>)=10<small>-6</small> s =1µs Chính vì lí do thạch anh có tần số f<small>zat</small> = 12MHz tạo ra chu kì máy là 1µs, thuận lợi cho việc tính tốn thời gian khi lập trình do đó thạch anh có tần số fzat là 12MHz thường được sử dụng trong thực tế.

Khi giao tiếp truyền nối tiếp với máy vi tính dùng thạch anh có tần số fzat là 11.0592MHz.

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>Kết nối chân RESET-chân 9 </b>

Khi bị cúp điện, hoặc đang hoạt động mà hệ thống bị lỗi cần tác động cho Vi điều khiển hoạt động trở lại, hoặc do người sử dụng muốn quay về trạng thái hoạt động ban đầu. Vì vậy chân RESET được kết nối như sau:

Với Vi điều khiển sử dụng thạch anh có tần số fzat = 12MHz sử dụng C=10µF và R=10KΩ.

Bộ nhớ ROM được tích hợp trong chip Vi điều khiển với dung lượng tùy vào chủng loại cần dùng, chẳng hạn đối với 89S52 là 8KByte, với 89S53 là 12KByte.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Bộ nhớ bên trong Vi điều khiển 89Sxx là bộ nhớ Flash ROM cho phép xóa bộ nhớ ROM bằng điện và nạp vào chương trình mới cũng bằng điện và có thể nạp xóa nhiều lần.

Bộ nhớ ROM được định địa chỉ theo từng Byte, các byte được đánh địa chỉ theo số hex-số thập lục phân, bắt đầu từ địa chỉ 0000H, khi viết chương trình cần chú ý đến địa chỉ lớn nhất trên ROM, chương trình được lưu sẽ bị mất khi địa chỉ lưu vượt qua vùng này. Ví dụ: AT89S52 có 8KByte bộ nhớ ROM nội, địa chỉ lớn nhất là 1FFFH, nếu chương trình viết ra có dung lượng lớn hơn 8KByte các byte trong các địa chỉ lớn hơn 1FFFH sẽ bị mất.

Ngoài ra Vi điều khiển cịn có khả năng mở rộng bộ nhớ ROM với việc giao tiếp với bộ nhớ ROM bên ngoài lên đến 64Kbyte (địa chỉ từ 0000H đến FFFFH).

<b>Bộ nhớ dữ liệu- bộ nhớ RAM </b>

Bộ nhớ RAM dùng làm môi trường xử lý thông tin, lưu trữ các kết quả trung gian và kết quả cuối cùng của các phép tốn, xử lí thơng tin. Nó cũng dùng để tổ chức các vùng đệm dữ liệu, trong các thao tác thu phát, chuyển đổi dữ liệu. RAM nội trong Vi điều khiển được tổ chức như sau:

* Các vị trí trên RAM được định địa chỉ theo từng Byte bằng các số thập lục phân (số Hex)

* Các bank thanh ghi có địa chỉ 00H đến 1FH * 210 vị trí được định địa chỉ bit

* các vị trí RAM bình thường

* Các thanh ghi có chức năng đặc biệt có địa chỉ từ 80H đến FFH.

Các byte RAM 8 bit của vi điều khiển được gọi là "ơ nhớ", nếu các ơ nhớ có chức năng đặc biệt thường được gọi là "thanh ghi", nếu là bit thì được gọi là "bit nhớ".

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<i>Hình 1.8: Cấu trúc bộ nhớ ram bên trong của vi điều khiển </i>

<b>Các bank thanh ghi </b>

Các bank thanh ghi có địa chỉ byte từ 00H÷1FH, có 8 thanh ghi trong mỗi bank, các thanh ghi được đặt tên từ R0÷R7, các thanh ghi này được đặt mặc định trong bank 1. Có 4 bank thanh ghi và tại mỗi thời điểm chỉ có một bank thanh ghi được truy xuất với các thanh ghi từ R0÷R7, để thay đổi việc truy xuất các thanh ghi trên các bank thanh ghi, người dùng phải thay đổi giá trị các bit chọn bank trong thanh ghi trạng thái PSW bằng các câu lệnh trong chương trình.

Các lệnh dùng các thanh ghi từ R0 ÷ R7 mất khoảng khơng gian lưu trữ ít

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

hơn và thời gian thực hiện nhanh hơn so với các lệnh dùng các ơ nhớ RAM khác, ngồi ra các thanh ghi này cịn có thêm một số chức năng đặc biệt khác, vì lí do này các dữ liệu sử dụng thường thường được người viết chương trình đưa vào lưu trong các thanh ghi này.

Ngồi ra, có thể truy xuất thanh ghi trên các bank thanh ghi như với các ơ nhớ bình thường khác. Ví dụ: nguời dùng có thể truy xuất đến thanh ghi R7 bằng ơ nhớ 07H.

<b>Vùng RAM truy xuất từng bit </b>

Trên RAM nội có 210 ơ nhớ bit được định địa chỉ và có thể truy xuất đến từng bit, các bit nhớ này cũng được định địa chỉ bằng các số thập lục phân- số Hex. Trong đó có 128 bit nằm trong các ơ nhớ có địa chỉ byte từ 20H đến 2FH, các bit nhớ còn lại chứa trong nhóm thanh ghi có chức năng đặc biệt.

Mặc dù các bit nhớ và ô nhớ (byte) cùng được định bằng số Hex, tuy nhiên chúng sẽ được nhận dạng là địa chỉ bit hay địa chỉ byte thông qua các câu lệnh tương ứng dành cho các bit nhớ hoặc các ơ nhớ này.

<b>Vùng RAM bình thường </b>

Vùng RAM này có địa chỉ byte từ 30H ÷ 7FH, dùng để lưu trữ dữ liệu, được truy xuất theo từng byte

<b>Các thanh ghi có chức năng đặc biệt </b>

Các thanh ghi này được định địa chỉ byte, một số được định thêm địa chỉ bit, có địa chỉ của các thanh ghi này nằm trong khoảng 80H ÷ FFH. Các thanh ghi đặc biệt này này được dùng để xác lập trạng thái hoạt động cần thiết cho Vi điều khiển.

<b>Con trỏ ngăn xếp SP </b>

Con trỏ ngăn xếp SP là một thanh ghi có địa chỉ 81H, giá trị của nó được tăng, giảm tự động khi thực hiện các lệnh PUSH, CALL, POP con trỏ SP dùng quản lí và xử lí các nhóm dữ liệu liên tục.Giá trị mặc định của SP là 07H.

<b>Con trỏ dữ liệu DPTR </b>

Con trỏ dữ liệu DPTR là thanh ghi 16 bit duy nhất của Vi điều khiển được tạo thành từ hai thanh ghi DPL (byte thấp-địa chỉ byte 82H) và DPH (byte cao-địa chỉ byte 83H). Hai thanh ghi DPL và DPT có thể truy xuất độc lập bởi người sử dụng. Con trỏ dữ liệu DPTR thường được sử dụng khi truy xuất dữ liệu từ bộ nhớ ROM hoặc bộ nhớ từ bên ngoài.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>1.4.3. Lập trình cho vi điều khiển </b>

Vi điều khiển được xem như là một máy tính thu nhỏ bao gồm cả rom, ram và các phần kết nối khác. Do đó, để vi điều khiển hoạt động thì ta phải lập trình cho nó một tập tin bao gồm nhiều lệnh để vi điều khiển hoạt động theo ý muốn.

Hiện nay có hai ngơn ngữ thường được dung cho việc lập trình vi điều khiển là C và ASM.

<b>1.5. Led 7 đoạn anot chung Cấu tạo led 7 đoạn </b>

Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo hình dạng số 8 và có thêm một led đơn hình trịn nhỏ thể hiện dấu chấm trịn ở góc dưới, bên phải của led 7 đoạn 8 led đơn trên led 7 đoạn có Anode(cực +) hoặc Cathode(cực -) được nối chung với nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch điện. 8 cực còn lại trên mỗi led đơn được đưa thành 8 chân riêng, cũng được đưa ra ngoài để kết nối với mạch điện. Nếu led 7 đoạn có Anode(cực +) chung, đầu chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 0. Nếu led 7 đoạn có Cathode(cực -) chung, đầu chung này được nối xuống Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1.

Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm bảo dòng qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu kết nối với nguồn 5V có thể hạn dịng bằng điện trở 330Ω trước các chân nhận tín hiệu điều khiển.

Sơ đồ vị trí các led được trình bày như hình dưới:

<i>Hình 1.9: Sơ đồ bố trí các led </i>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Các điện trở 330Ω là các điện trở bên ngồi được kết nối để giới hạn dịng điện qua led nếu led 7 đoạn được nối với nguồn 5V. Chân nhận tín hiệu a điều khiển led a sáng tắt, ngõ vào b để điều khiển led b. Tương tự với các chân và các led còn lại.

<b>Bảng mã hiển thị led 7 đoạn anot chung </b>

<i>Bảng 1.3: Mã hiển thị các led </i>

<b>1.6. Đồng hồ thời gian thực DS1307 </b>

DS1307 là chip thời gian thực hay RTC (Read time clock). Đây là một IC tích hợp cho thời gian bởi vì tính chính xác về thời gian tuyệt đối cho thời gian : Thứ, ngày,tháng, năm, giờ, phút, giây. DS1307 là chế tạo bởi Dallas. Chip này có 7 thanh ghi 8 bit mỗi thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây. Ngồi ra DS1307 cịn chứa 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống các thanh ghi này có thể dùng như là RAM. DS1307 được đọc thông qua chuẩn truyền thông I2C nên do đó để đọc được và ghi từ DS1307 thông qua

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

chuẩn truyền thông này. Do nó được giao tiếp chuẩn I2C nên cấu tạo bên ngồi nó rất đơn giản.

<b>Cấu tạo: </b>

<i>Hình 1.10: Sơ đồ chân của DS1307 </i>

<b>+ X1 và X2 là đầu vào dao động cho DS1307. Cần dao động thạch anh </b>

32.768Khz.[separator]

<b>+ Vbat là nguồn nuôi cho chip. Nguồn này từ ( 2V- 3.5V) ta lấy pin có </b>

nguồn 3V. Đây là nguồn cho chip hoạt động liên tục khi khơng có nguồn Vcc mà DS1307 vẫn hoạt động theo thời gian

<b>+ Vcc là nguồn cho giao tiếp I2C. Điện áp cung cấp là 5V chuẩn và được </b>

dùng chung với vi xử lý. Nếu mà Vcc không có mà Vbat có thì DS1307 vẫn hoạt động bình thường nhưng mà không ghi và đọc được dữ liệu.

<b>+ GND là nguồn Mass chung cho cả Vcc và Vbat </b>

<b>+ SQW/OUT là một ngõ ra phụ tạo xung dao động (xung vuông). Chân </b>

này tôi nghĩ không ảnh hưởng đến thời gian thực nên chúng ta không sử dụng chân này trong thời gian thực và bỏ trống chân này!

<b>+ SCL và SDA là hai bus dữ liệu của DS1307. Thông tin truyền và ghi đều </b>

được truyền qua 2 đường truyền này theo chuẩn I2C.

<b>1.7. Rơ le 5 chân </b>

Rờle là một công tắc điều khiển từ xa đơn giản, nó dùng một dịng nhỏ để điều khiển một dịng lớn vì vậy nó được dùng để bảo vệ công tắc nên cũng được

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

xem là một thiết bị bảo vệ.Một rơle điển hình điều khiển mạch và cả điều khiển nguồn. Kết cấu rơle gồm có một lõi sắt ,một cuộn từ và một tiếp điểm.

<b>Nguyên lý hoạt động </b>

<i>Hình 1.11: Cấu tạo của rơ le 5 chân </i>

Thông thường chân 1 và chân 2 sẽ được nối vào nguồn ni có giá trị khoảng 5V hoặc 12V. Chân 3 và chân 4 nối vào mạch điện chính và chân 5 để trống.

Khi chưa có nguồn ni, chân 3 sẽ được nối với chân 5, mạch bị hở nên khơng có dịng điện chạy qua mạch chính. Khi cấp nguồn nuôi vào chấn số 1 và 2 thì chân 3 sẽ được nối với chân 4, mạch chính kin và có dịng điện chạy qua mạch.

<b>Thơng số kỹ thuật rơ le 5 chân HLS8L – 5VDC </b>

Điện áp điều khiển: 5V Dòng điện cực đại: 10A Thời gian tác động: 10ms Thời gian nhả hãm: 5ms

Nhiệt độ hoạt động: -45<small>o</small>C ~ 75<small>o</small>C Điện áp cực đại sử dụng: 250 VAC Dòng điện cực đại sử dụng: 10A

<b>1.8. Phần mềm Proteus 7.10 </b>

Phần mềm Proteus là phần mềm cho phép mô phỏng hoạt động của mạch điện tử tương tự và số bao gồm phần thiết kế mạch và viết chương trình điều khiển cho các họ vi điều khiển như MCS-51, PIC, AVR, …[1, 2]

Phần mềm bao gồm 2 chương trình: ISIS (Intelligent schematic input system) cho phép mô phỏng mạch và ARES (Advanced routing & editing

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

softwar) dùng để vẽ mạch in.

<b>• Giao diện khởi tạo của phần mềm proteus </b>

Để vẽ sơ đồ nguyên lý, vào Start Menu khởi động chương trình ISIS. Chương trình được khởi động và có giao diện như hình 1.

Trong hình 1 chỉ rõ ở giao diện gồm có: vùng làm việc chính; vùng hiển thị, thanh công cụ, vùng lựa chọn, thanh tác vụ và các nút mô phỏng

Vùng làm việc chính là vùng tại đó ta vẻ các linh kiện điện tử, nối dây các linh kiện, đặt các máy đo, hiển thị các đồ thị mong muốn.

Thanh công cụ gồm có các thành phần cơ bản sau: - Section mode: Chức năng nay để chọn linh kiện

- Component mode: Dùng để lấy linh kiện trong thư viện linh kiện - wire lable mode: đặt tên cho dây

- Terminals mode: Chứa Power, Ground,

- Graph mode: Dùng để vẽ dạng sóng, datasheet, trở kháng…

- Generator Mode: Chứa các nguồn điện, nguồn xung, nguồn dòng… - Voltage Probe Mode: Dùng để đo điện thế tại 1 điểm trên mạch, đây là 1 dụng cụ chỉ có 1 chân và khơng có thật trong thức tế

- Curent Probe mode: Dùng để đo chiều và độ lớn của dòng điện tại 1 điểm trên wire- Virtual Instrument Mode: Chứa các dụng cụ đo dòng và áp, các dụng cụ này được mô phỏng như trong thực tế

Thanh các nút mô phỏng trong hình 1 gồm có nut mơ phỏng liên tục, mô phỏng từng bước, tạm dừng và dừng mô phỏng.

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b>• Sử dụng thư viện isis </b>

<i>Hình 1.12: Giao diện phần mềm Proteus 7.10 </i>

Để lấy các linh kiện điện tử ta phải vào được thư viện chính isis, nhìn vào phía trái của chương trình và thực hiện như sau:

Bấm vào biểu tượng Component Mode ,sau đó bấm vào chữ P hoặc nhấn phím tắt P trên Keyboad hoặc củng có thể Right Click trên Editting Window và chọn Place

<i>Hình 1.13: Cách vào thư viện isis </i>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Khung chương trình Pick Devices hiện ra như sau:

<i>Hình 1.14: Khung chương trình Pick Devices </i>

Trong hình 3 có phần keyword: là ơ tìm kiếm, ta đánh các từ khóa cần tìm ví dụ: resistor ( khơng phân biệt chữ hoa và chữ thường) . Ở phần category sẽ hiển thị các thư mục liên quan đến từ khóa. Phần sub-category là nhóm con của phần trên. Phần manufacturer là tên của nhà sản xuất linh kiện. ở o preview là ô hiển thị trên sơ đồ nguyên lý. PCB preview là hình dáng trên sơ đồ mạch in. Nếu linh kiện trong sơ đồ ngun lý khơng có hình dáng trên sơ đồ mạch in ( hay kiểu đóng gói thì khi chuyển sang sơ đồ mạch in chúng ta phải thiết kế dạng chân (kiểu đóng gói cho chúng ). Mục ở giữa là kết quả hiển thị.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<i>Hình 1.15: Các linh kiện được lấy từ thư viện isis </i>

Double Click vào linh kiện cần lấy, lập tức linh kiện sẻ được bổ sung vào “vùng chọn lựa” ở ngồi giao diện chính như hình dưới.

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

hợp và Click chuột trái.

- Một đặc điểm rât hay của phân mêm này là có thê phóng to thu nhỏ vùng làm việc bằng cách dùng Scroll của chuột. Nhấn F8 để Zoom 100%

- Move linh kiện ( Di chuyển linh kiện ). Ta chọn linh kiện cần di chuyển. Right Click và chọn Drag Objject

- Ta cũng có thể Copy, Move, Rotate, Delete linh kiện

- Wire. (Vẽ dây nối chân các linh kiện ) chọn công cụ Selection Mode. Sau đó đưa chuột lại chân linh kiện, khi đó con trỏ chuột có dạng một cây bút màu xanh.

Click vào chân linh kiện để nối dây vào chân đó, sau đó đưa chuột đến chân còn lại mà ta muốn

- Delete wire bằng cách Right Click 2 lần lên dây. Hình dạng đường đi của dây di qua các điểm mà ta click chuột.

- Editing Part Labels. Có thể ẩn hoăc hiện tên, giá trị , thay đổi tên, giá trị của linh kiện bằng cách: Right Click /Edit Properties. Check/Uncheck Hidden (ẩn hiện tên, giá trị linh kiện ).

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<b>CHƯƠNG 2: THIẾT KẾ MẠCH ĐIỆN ĐIỀU KHIỂN HỆ THỐNG CHIẾU SÁNG </b>

<b>2.1. Sơ đồ mạch điện 2.1.1. Sơ đồ khối </b>

Nhiệm vụ của từng khối trong mạch:

• Khối thời gian thực: cung cấp dữ liệu thời gian cho vi điều khiển • Khối vi điều khiển:

- Nhận dữ liệu thời gian từ DS1307.

- Cài đặt thời gian thực, thời gian đóng và thời gian mở của mạch. - Xử lý dữ liệu và xuất ra cho hai khối còn lại.

• Khối Led 7 đoạn:

- Nhận dữ liệu từ vi điều khiển.

- Hiển thị thời gian và các thơng tin khác. • Khối cảm biến và tải:

- Nhận dữ liệu từ vi điều khiển.

- Cảm biến đo cường độ ánh sáng và cấp dòng cho tải nếu đủ điều kiện. Khối thời

gian thực DS1307

Khối vi điều khiển

Khối Led 7 đoạn

Khối cảm biến và tải

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

- Chân số 5(SDA) được nối với cổng P3.4 với chức năng truyền dữ liệu cho vi điều khiển.

- Chân số 6(SCL) được nối với cổng P3.5 với chức năng tạo xung giữ nhịp cho quá trình truyền dư liệu ở chân số 5. Cứ mỗi xung trên đường giữ nhịp SCL, một bit dữ liệu trên đường SDA sẽ được lấy mẫu (sample). Dữ liệu nối tiếp trên đường SDA được lấy mẫu khi đường SCL ở mức cao trong một chu kỳ giữ nhịp, vì thế đường SDA khơng được đổi trạng thái khi SCL ở mức cao (trừ START và STOP condition). Chân SDA có thể được đổi trạng thái khi SCL ở mức thấp.

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>b. Khối vi điều khiển </b>

<i>Hình 2.2: Sơ đồ khối vi điều khiển </i>

Khối này bao gồm 1 vi điều khiển AT89S52, nguồn 5V, bộ dao động thạch anh, các tụ điện và điện trở.

Chân số 40(VCC) được nối nguồn 5V để cấp năng lượng hoạt động cho vi điều khiển.

Chân số 31(𝐸𝐴) được nối nguồn để vi điều khiển sử dụng bộ nhớ trong trong q trình hoạt động, nếu khơng nối thì phải có bộ nhớ ngồi cấp cho vi điều khiển.

Chân số 20 (GND) được nối đất.

Chân số 19(XTAL1) và chân số 18(XTAL2) được nối vào bộ dao động thạch anh để tạo xung cho vi điều khiển. Bộ dao động thạch anh này sẽ bao gồm một thạch anh có tần số 12 MHz để tạo xung và hai tụ C1, C2 điện dung 1nF để tăng độ ổn định trong quá trình tạo xung.

Các chân từ P1.0 đến P1.4 được nối nguồn thông qua các điện trở và nối với các khóa K để cấp tín hiệu logic cho vi điều khiển xử lý các lệnh. Cụ thể khi đóng khóa thì tín hiệu sẽ ở mức 1 và khi mở thì tín hiệu sẽ ở mức 0. Các chân

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

này lần lượt có các chức năng là mode chỉnh sửa, tăng, giảm, đặt thời gian mở và đặt thời gian tắt cho mạch.

<b>c. Khối Led 7 đoạn </b>

<i>Hình 2.3: Sơ đồ khối led 7 đoạn </i>

Khối này bao gồm 6 Led 7 đoạn anot chung, 6 transistor A1015 và các điện trở.

<i>7 chân A,B,C,D,E,F,G của các Led 7 đoạn sẽ được nối với tất cả các chân </i>

nhận tín hiệu được kết nối với Port 0 đã qua điện trở hạn dòng. Để điều khiển ON/OFF cho các led 7 đoạn, sử dụng transitor loại PNP(A1015), transitor này nhận dòng điều khiển từ một ngõ ra của Vi điều khiển, led 7 đoạn sẽ được ON khi tín hiệu từ vi điều khiển đến transistor ở mức 0. Các điện trở 4.7K và điện trở treo 4.7K đảm bảo transitor luôn hoạt động ở chế độ ngắt/dẫn(đảm bảo khi led 7 đoạn đang ở trạng thái OFF sẽ bị tắt hồn tồn, khơng bị sáng mờ mờ).

</div>

×