Hệ thống báo giờ tự động bằng loa ngày nay đang được ứng dụng mạnh mẽ nhất với mức độ hoạt động tuyệt đối nhất. Những thiết bị báo giờ thông thường ngày nay đang được thay đổi nhiều vì tính năng hoạt động và ứng dụng của con người hiện đại khác nhau. Bộ báo giờ phát nhạc tự động luôn có những tính năng ưu việt mà người dùng sẽ cảm nhận được khi sử dụng thiết bị. Chuyên dùng cho hệ thống chuông báo giờ văn phòng, công ty, với tiêu chuẩn kỹ thuật và chất lượng cao. Chức năng hệ thống của hệ thống báo loa bao gồm: + Có thể chọn thời gian báo chuông. + Hiển thị thời gian thực. + Hiển thị thông số. +Sử dụng còi và led nháy để báo giờ. + Điều khiển bằng tay.
Trang 1TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
KHOA CƠ KHÍ
**** HỆ THỐNG NHÚNG
MỤC LỤCLỜI MỞ ĐẦU 4
Trang 2CHƯƠNG 1 GIỚI THIỆU YÊU CẦU – GIỚI HẠN CỦA ĐỀ TÀI 5
1.1 Giới thiệu 5
1.1.1 Chức năng của hệ thống 5
1.1.2 Phân loại 5
1.1.3 Yêu cầu của hệ thống 7
1.2 Giới hạn 8
CHƯƠNG 2 THIẾT KẾ 9
2.1 Giới thiệu 9
2.2 Thiết kế sơ đồ khối 9
2.2.1 Thiết kế sơ đồ nguyên lý 10
2.2.2 Lưu đồ và chương trình 18
CHƯƠNG 3 KẾT QUẢ THỰC HIỆN VÀ KẾT LUẬN 29
3.1 Ưu, nhược điểm của đề tài 29
3.2 Kết luận 29
TÀI LIỆU THAM KHẢO 30
DANH SÁCH HÌNH ẢNH Hình 2.1 : Sơ đồ khối mạch đếm sản phẩm 9
Hình 2.2: Khối xử lý 11
Hình 2.3: Kí hiệu và cấu tạo led 7 đoạn 12
Hình 2.4: Hình ảnh led 7 đoạn 12
Hình 2.5: Mạch hiển thi led 7 đoạn sử dụng IC74HC595 mở rộng chân 13
Hình 2.6: Khối hiển thị led 7 đoạn 13
Hình 2.7:Cấu tạo và kí hiệu led matrix 14
Hình 2.8: Hình ảnh led matrix 15
Hình 2.9: Bộ mở rộng chân dùng cho led matrix 15
Hình 2.10: Bộ khuếch đại dòng 16
Hình 2.11: Sơ đồ mạch bộ đếm thời gian thực 16
Hình 2.12: Sơ đồ nguyên lý của hệ thống 18
Hình 2.13: Lưu đồ trình tự điều khiển của hệ thống 19
Trang 4LỜI MỞ ĐẦU
Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng
ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn Trong đó, sự phát triểncủa kỹ thuật tự động hóa đã tạo ra hàng loạt những thiết bị với đặc điểm nổi bật như
độ chính xác, bảo mật cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần thiết cho
sự tiện lợi trong cuộc sống.Trong lĩnh vực tự động hóa hiện nay kĩ thuật vi điềukhiển đã trở nên quen thuộc, hầu hết các dây truyền tự động lớn và các sản phẩmdân dụng ta đều thấy sự xuất hiện của vi điều khiển Càng ngày, các họ của vi điềukhiển mới càng được các nhà sản xuất tích hợp thêm nhiều tính năng với các bộngoại vi được tích hợp ngay trên chip, cùng với khả năng xử lý nhiều hoạtđộng phức tạp
Thành quả của cách mạng 4.0 là sự sản sinh ra các thiết bị công nghệ có tính kếtnối cao Công nghệ Trí tuệ nhân tạo, Internet of Things là những nền tảng quantrọng cung cấp các giải pháp xử lý công việc tiết kiệm thời gian, công sức
Sự kết hợp của các thiết bị trong một giải pháp đồng bộ tạo nên xu hướng sốngmới từ nhà thông minh smarthome Theo đó, việc quản lý và điều khiển ngôi nhà, từ
hệ thống chiếu sáng, các thiết bị điện tử, hệ thống an ninh đều được thực hiệnkhông dây, kết nối qua internet Các thao tác như tắt, bật đèn, TV, tăng giảm điềuhòa, kéo mở rèm cửa được thực hiện chỉ với một cú chạm trên smartphone haytablet
Đi theo xu hướng trên, chúng em cũng thiết kế “ Hệ thống báo giờ tự động bằngloa” dựa trên nhu cầu về tính tự động về thời gian cho các công ty, cơ quan, trườnghọc được mô phỏng trong Tiểu luận môn học Hệ thống nhúng
Trang 5CHƯƠNG 1 GIỚI THIỆU YÊU CẦU – GIỚI HẠN CỦA ĐỀ TÀI
1.1 Giới thiệu
1.1.1 Chức năng của hệ thống
- Hệ thống báo giờ tự động bằng loa ngày nay đang được ứng dụng mạnh mẽnhất với mức độ hoạt động tuyệt đối nhất Những thiết bị báo giờ thôngthường ngày nay đang được thay đổi nhiều vì tính năng hoạt động và ứngdụng của con người hiện đại khác nhau Bộ báo giờ phát nhạc tự động luôn
có những tính năng ưu việt mà người dùng sẽ cảm nhận được khi sử dụngthiết bị Chuyên dùng cho hệ thống chuông báo giờ văn phòng, công ty, vớitiêu chuẩn kỹ thuật và chất lượng cao
- Chức năng hệ thống của hệ thống báo loa bao gồm:
+ Có thể chọn thời gian báo chuông
+ Hiển thị thời gian thực
+ Hiển thị thông số
+Sử dụng còi và led nháy để báo giờ
+ Điều khiển bằng tay
1.1.2 Phân loại
Hệ thống báo giờ tự động bằng loa hiện nay trên thị trường rất phổ biếntrong các trường học, cơ quan, đơn vị, các phân xưởng sản xuất,… Và nóđược điều khiển bởi nhiều pháp khác nhau.Ở trong bài tiểu luận này, chúng
em đã phân loại hệ thống theo các phương pháp điều khiển Có 3 dạng: Hệthống điều khiển dùng LOGO, hệ thống điều khiển dùng PLC và hệ thốngđiều khiển sử dụng vi điều khiển
a) Hệ thống dùng vi điều khiển
Ưu điểm
- Chi phí phần cứng tương đối thấp, linh kiện phổ biến dễ dàng tìm thấy
và mua trên thị trường
Trang 6- Tiêu thụ điện năng thấp.
- Tiết kiệm không gian
- Mô phỏng và thử nghiệm đơn giàn
- Có thể thiết kế từng khối riêng rẽ đặc biệt có thể thay đổi linh hoạt thờiđiểm vào/ra nhờ thay đổi khối giải mã
Nhược điểm
- Mỗi lần muốn thay đổi chương trình phải lắp đặt lại toàn bộ
- Tốn khá nhiều thời gian cho việc thiết kế lắp đặt
- Quy trình lập trình, thuật toán tương đối phức tạp
- Độ bền và tin cậy không cao
- Sau một thởi gian dùng sẽ bị sai lệch về thởi gian thực do hệ thống bịảnh hường của nhiễu bên ngoài, do chương trình lập trình
- Khi mất điện nhiều lần dẫn đến hệ thống sẽ bị sai số vì khi mất điện cácthông số hiện thời không được lưu mà bị reset về 0 ban đầu
b) Hệ thống điều khiển dùng logo
Ưu điểm
- Công suất tiêu thụ ít
- Ngôn ngữ lập trình đơn giàn
- Tính hộp là một modul nhỏ gon, dễ dàng đấu nối
- Giao tiếp người - mảy đơn giản dễ thao tác
- Có độ bền và độ tin cậy vận hành khá cao
- Dễ dành thay đổi chương trình khi cần
- Bào trì sửa chữa dễ dàng
Nhược điểm
- Giá thành khá cao
- khó sửa chữa thay thế các khối bị hỏng
- Sau khi dùng được một thời gian( 2 năm) xuất hiện sai lệch về thời gian.Chạy không chính xác nữa, nguyên nhân là do pin của LOGO! không bền
- Pin dự trữ khi mất điện thấp (từ 10 tiếng đến 30 tiếng)
Trang 7c) Hệ thống điều khiển sử dụng PLC
Ưu điểm
- Những dây kết nối trong hệ thống giàm được 80 % nên nhỏ gọn hơn
- Công suất tiêu thụ ít
- Thời gian lắp đặt nhanh hơn
- Tiết kiệm không gian
- Dễ dàng thay đổi chương trình
- Bảo trì và sửa chữa dễ dàng
- Độ bền và tin cậy vận hành cao
- Giá thành của hệ thống giảm khi số tiếp điểm tăng
- Thích ứng trong môi trường khắc nghiệt như môi trường ẩm ướt như ởnước ta, môi trường có nhiệt độ thay đổi, điện áp dao động, tiếng ồn,oxihóa
- Chuẩn bị hoạt động nhanh
- Chuẩn hóa được phần cứng điều khiển
- Ửng dụng điều khiển trong phạm vi rộng
- Ngôn ngữ lập trình dễ hiểu
- Dễ lập trình và có thể lập trình trên máy tính thích hợp cho việc thực hiệncác lệnh tuần tự của nó
- Có thiết bị chống nhiễu
- Các modul rời cho phép thay thế hoặc thêm vào khi cần thiết
- Giao tiếp được với các thiết bị thông minh khác như: máy tính, nối mạng,các Modul mở rộng
Nhược điểm
- Giá thành cao
- Có bao nhiêu loại đồng hồ: đồng hồ cơ, đồng hồ điện tử, ưu điểm, khuyếtđiểm …
1.1.3 Yêu cầu của hệ thống
- Sử dụng các nút nhấn để chọn thời gian báo chuông
- Hiển thị lên Led Matrix thời gian hiện thời
- Hiển thị lên Led 7 đoạn số phút còn lại
Trang 8- Khi đến thời điểm đặt báo còi và nhấp nháy Led đơn
Trang 9CHƯƠNG 2 THIẾT KẾ
2.1 Giới thiệu
- Hệ thống báo giờ tự động bằng loa được thiết kế với chức năng linh hoạt
có thể chọn thời gian báo chuông ( do yêu cầu nên tối đa chọn được 99phút) , có thể hiển thị thời gian hiện thời để làm căn cứ cho việc chọn thờigian báo chuông Khi đến thời gian báo chuông hệ thống hiển thị và hệthống chuông cùng khởi động và cần sử dụng nút bấm mới tắt được hệthống
2.2 Thiết kế sơ đồ khối
- Theo yêu cầu của đề tài thì nhóm chúng tôi tiến hành thiết kế sơ đồ khốicủa mạch báo giờ tự động như hình 2.1:
Hình 2.1 : Sơ đồ khối mạch đếm sản phẩm.
Trang 10- Chức năng từng khối:
● Khối nguồn: có chức năng cấp nguồn cho toàn bộ mạch để hoạt động
● Khối thời gian thực: có chức năng hiển thị thời gian hiện thời
- Ở đây, nhóm em đã sử dụng chip pic 16F877A, do số chân của chip pic này
ít hơn số chân mà đề tài cần dùng Cụ thể: 3 led ma trận cần 48 chân điềukhiển cho led sáng theo ý muốn chưa tính đến các chân điều khiển led 7đoạn hay bộ xử lý thời gian thực… trong khi chip pic 16F877A có quá ítchân để sử dụng Vậy nên, chúng em đã sử dụng thêm IC mở rộng chân củatên là ICHC595 Thông qua IC này mà ta có thể tối giản số chân chip xử lícần sử dụng
- Các chân thuộc PORTA(chân 5-6) và các chân PORTE (chân 2-3) của vi
xử lí, được nối với khối nút nhấn để tao tín hiệu và điều chỉnh thông số trênLed 7 đoạn
- Các chân từ 1-3 thuộc PORTA của vi xử lí là ngõ ra của Led 7 đoạn
- Các chân từ 1-6 thuộc PORTB, PORTD và các chân từ 1-3, 5-8 thuộcPORTC của vi xử lí là ngõ ra của Led matrix
- Vi xử lí muốn hoạt động được cần có một nguồn tạo dao động Trong cácmạch vi xử lí thường sử dụng thạch anh để tạo dao động
Trang 11- Để tăng độ ổn định tần số, người ta dùng thêm 2 tụ nhỏ C4, C5 (33pF x2),
tụ bù nhiệt ổn tần
Hình 2.2: Khối xử lý
b Khối hiển thị:
Với hệ thống này, chúng em đã sử dụng 3 led matrix để hiển thị thời gian hiện thời
và 1 led 7 đoạn 2 số để hiển thị số phút còn lại, đồng thời sử dụng 4 led đơn đểhiển thị trạng thái hoạt động của hệ thống
Led 7 đoạn 2 số:
- Led 7 đoạn có chức năng hiển thị số thập phân cho biết kết quả sau khi xử
lý, trong mạch đếm sản số thời gian còn lại sẽ cho biết kết quả đếm là sốlượng phút
- Có 2 loại led 7 đoạn là anode chung và cathode chung
- Led 7 đoạn có kí hiệu, sơ đồ chân như hình sau:
Trang 12Hình 2.3: Kí hiệu và cấu tạo led 7 đoạn.
Hình 2.4: Hình ảnh led 7 đoạn
- Led 7 đoạn có cấu tạo là các led đơn được sắp xếp theo vị trí để khi sánghoặc tắt tạo thành 1 số thập phân từ 0 đến 9
- Dòng cho mỗi đoạn từ 5 đến 20mA và điện áp cho các led nhỏ là 2V
- Nhóm tiến hành chọn led loại anode chung
Trang 13Hình 2.5: Mạch hiển thi led 7 đoạn sử dụng IC74HC595 mở rộng chân
Hình 2.6: Khối hiển thị led 7 đoạn
- Ở đây sử dụng IC74HC595 để mở rộng chân vi xử lí, thực hiện hiển thịthời gian số phút còn lại trên Led 7 đoạn Các chân A0, A1,A2 được nối lầnlượt với PORTA.0, PORTA.1, PORTA.2
- Khối hiển thị dùng để hiển thị các thông tin: phút, giây Có 3 nút nhấn đểđiều chỉnh các thời gian hiển thị trên Led 7 đoạn
Trang 14 Led matrix
- Led matrix có chức năng hiển thị số thập phân cho biết kết quả sau khi xử
lý, trong mạch đếm thời gian thực sẽ cho biết kết quả đếm là số lượng giờphút giây thực tế
- Led matrix có kí hiệu, sơ đồ chân như hình sau:
Hình 2.7:Cấu tạo và kí hiệu led matrix.
Trang 15Hình 2.8: Hình ảnh led matrix
- Led matrix là toàn bộ hệ thống bóng đèn led hay cụm led (module led) đềuđược sắp xếp thành các hàng, cột nối tiếp nhau trên bề mặt biển quảng
cáo, từ đó tạo nên kết cấu tương tự như một ma trận kỳ bí thu nhỏ kích
thích mọi giác quan
- Nhóm tiến hành chọn led loại 8x8
Hình 2.9: Bộ mở rộng chân dùng cho led matrix
Trang 16Hình 2.10: Bộ khuếch đại dòng
- Cũng giống như led 7 đoạn thì nhóm em cũng sử dụng IC74HC595 để tối
ưu chân vi xử lí và việc thực hiện hiển thị led matrix được dễ dàng hơn
- Ngoài ra, nhóm em còn sử dụng IC74HC245 để khuếch đại dòng chạy qualed matrix, để led hiển thị được rõ hơn
c Khối thời gian thực
Trang 17Hình 2.11: Sơ đồ mạch bộ đếm thời gian thực
- VCC,GND: nguồn 1 chiều được cung cấp tới các chân này VCC là đầu vào 5V.Khi 5V được cung cấp thì thiết bị đó có thể truy cập hoàn chỉnh và dữ liệu có thểđọc và viết
- Khi pin 3V được kết nối tới thiết và vcc nhỏ hơn 1,25Vbat thì quá trình đọc và viếtkhông được thực thi, tuy nhiên chức năng timekeeping không bị ảnh hưởng bởiđiện áp vào thấp khi VCC nhỏ hơn Vbat thì RAM và time keeper sẽ được ngắt tớinguồn cung cấp( 3-5VDC)
- Vbat: đầu vào pin cho bất kỳ một chuẩn pin 3V Điện áp pin phải giữ trong khoảng2.5-3V để đảm bảo cho thiết bị hoạt động tốt
- SCL(serial clock input): SCL được xử dụng để đồng bộ sự chuyển dữ liệu trênđường dây nối tiếp
- SDA(serial data input/output): là chân ra vào cho 2 đường dây nối tiếp chân SDAđược thiết kế theo kiêu cực máng hở, vì vậy phải có điện trở R2=10K và R3=10Kkéo lên trong khi hoạt động
- X ,X2: được nối với thạch anh với tần số 32,768 kHz là một mạch tạo dao độngngoài, để hoạt động ổn định ta có thể nối thêm 2 tụ C1,C2 với giá trị 33pF
d Khối nguồn
- Có 16 linh kiện dùng nguồn 5V và 1 thiết bị sử dụng nguồn 24V Do còn
nhiều hạn chế cũng như dựa vào kinh nghiệm nên nhóm em quyết định thiết
kế đúng nguồn như nêu
- Sử dụng bộ biến đổi 220V-24V và module biến đổi nguồn 5V cho toàn bộ hệ
thống
- Tính tổng dòng cho từng nguồn: Quyết định cho IC khuếch đại dòng 100mA.
e Sơ đồ nguyên lý cho toàn mạch
- Đầu tiên hệ thống sẽ setup thời gian thực nhờ IC DS1307.
- Ấn nút “Tang” hoặc “Giam” để điều chỉnh số phút cần báo giờ hiển thị trên
led 7 đoạn, sau đó nhấn nút “ Bat Dau” để thực hiện đếm và báo giờ Để chắcchắn hệ thống báo giờ đang hoạt động thì có 4 led đơn báo hiệu Khi đến thờigian đã hẹn thì hệ thống loa báo và led báo sẽ hoạt động
- Muốn dừng báo hiệu hệ thống ta nhấn nút “Tat”.
Trang 18Hình 2.12: Sơ đồ nguyên lý của hệ thống
2.2.2 Lưu đồ và chương trình
a Giới thiệu yêu cầu điều khiển
Với yêu cầu của hệ thống báo giờ tự động bằng loa sử dụng chip pic16F877A để điều khiển hệ thống, nhóm đã đồng thời kết hợp các ICphụ trợ để tối ưu các chân vi xử lý có thể sử dụng như: IC DS1307 đểhiển thị thời gian thực hay IC 74HC595 để mở rộng chân thực hiện cácyêu cầu hiển thị và báo hiệu khác của hệ thống
Trang 19b Lưu đồ
Hình 2.13: Lưu đồ trình tự điều khiển của hệ thống
Trang 20#define Led(x) output_bit(PIN_D6,x);
#define Ledbao(x) output_bit(PIN_D7,x);
#define EN0(x) output_bit(Pin_B6,x);
#define EN1(x) output_bit(Pin_B7,x);
[8]={{0x00,0x00,0x00,0x00,0x3E,0x41,0x41,0x3E},//00 {0x00,0x00,0x00,0x00,0x00,0x42,0x7F,0x40},//01 {0x00,0x00,0x00,0x00,0x42,0x61,0x51,0x4E},//02 {0x00,0x00,0x00,0x00,0x00,0x49,0x49,0x7F},//03 {0x00,0x00,0x00,0x00,0x18,0x14,0x12,0x7F},//04 {0x00,0x00,0x00,0x00,0x00,0x4F,0x49,0x79},//05 {0x00,0x00,0x00,0x00,0x00,0x7F,0x49,0x79},//06 {0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x7F},//07 {0x00,0x00,0x00,0x00,0x36,0x49,0x49,0x36},//08
Trang 21{0x00,0x00,0x00,0x00,0x00,0x4F,0x49,0x7F},//09 };
[8]={{0x3E,0x41,0x41,0x3E,0x00,0x00,0x00,0x00},//00 {0x00,0x42,0x7F,0x40,0x00,0x00,0x00,0x00},//10 {0x42,0x61,0x51,0x4E,0x00,0x00,0x00,0x00},//20 {0x00,0x49,0x49,0x7F,0x00,0x00,0x00,0x00},//30 {0x18,0x14,0x12,0x7F,0x00,0x00,0x00,0x00},//40 {0x00,0x4F,0x49,0x79,0x00,0x00,0x00,0x00},//50 {0x00,0x7F,0x49,0x79,0x00,0x00,0x00,0x00},//60 {0x00,0x01,0x01,0x7F,0x00,0x00,0x00,0x00},//70 {0x36,0x49,0x49,0x36,0x00,0x00,0x00,0x00},//80 {0x00,0x4F,0x49,0x7F,0x00,0x00,0x00,0x00},//90 };
Ma7doan[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF};
void _HienThiLed(char Index, char Index1,char Index2, charIndex3,char Index4, char Index5);
void Led7thanh(char Sophut);
void main(){
unsigned char* Time;
signed char Gio,Phut,Giay;
char Index;
char Index1;
char Index2;
Trang 22//TODO: User Code Time = Get_DS1307_RTC_Time();
Gio = Time[2];
Phut = Time[1];
Giay = Time[0];
Thoigian=Gio*60+Phut;
Index=Gio%10;
Index1=Gio/10;
Index2=Phut%10;
Index3=Phut/10;
Index4=Giay%10;
Index5=Giay/10;
Trang 23_HienThiLed(Index,Index1,Index2,Index3,Index4,Index5);
if(input(PIN_A4)==0){
while(input(PIN_A4)==0){};
Caidat=Caidat+1;
} if(input(PIN_A5)==0){
while(input(PIN_A5)==0){};
Caidat=Caidat-1;
}
if(input(PIN_E1)==0){
while(input(PIN_E2)==0){};
Trangthai=0;
}
if(Chuong==Thoigian){
Trangthai=2;
Chuong=0;
Trang 24if(Trangthai==0){
Led(0);
Ledbao(0);
Led7thanh(Caidat);
}if(trangthai==1){
Led(1);
Ledbao(1);
Led7thanh(0);
} Sophut=Caidat;
}}
//!
void _HienThiLed(char Index , char Index1 ,char Index2, charIndex3,char Index4, char Index5)
{