Báo cáo đồ án môn thiết kế luận lý. Đề tài: Password door security. Đề tài đã thực hiện được khóa cửa bằng mật khẩu, có thể lưu lại mật khẩu khi mất điện. Cách sử dụng dễ dàng và an toàn. Sử dụng vi xử lý STM32f103RB
Trang 1Tp.HCM,ngày 22 thánh 12 năm 2014
Trang 2MỤC LỤC
PHẦN A MỞ ĐẦU 3
PHẦN B NỘI DUNG 4
CHƯƠNG 1: GIỚI THIỆU 4
1.1Yêu cầu và chức năng hệ thống 4
1.2Công cụ hỗ trợ 5
1.3Kế hoạch, phân công công việc 5
CHƯƠNG 2: THIẾT KẾ 6
2.1 Sơ đồ các khối chức năng 6
2.2 Chức năng các khối 7
2 3 Source Code 11
2.4 Mạch nguyên lý, mạch layout 21
CHƯƠNG 3 TỔNG KẾT 23
3.1 Kết luận 23
3.2 Đánh giá, phương hướng phát triển 23
PhẦN C TÀI LIỆU THAM KHẢO 24
Trang 3mà hiện nay đang rất cần thiết Vì thế đối với nhóm đây là bước cơ sở để nhóm nghiên cứu những ứng dụng lớn hơn sau này
Trong quá trình thực hiện đề tài, tuy đã cố gắng song do những hạn chế nhất định về kiến thức cũng như kinh nghiệm thực tế nên nhóm không tránh khỏi những thiếu sót Chúng em rất mong nhận được những ý kiến đóng góp của thầy cô và các bạn để đề tài của nhóm em được hoàn thiện hơn với nhiều chức năng hơn
Trang 4PHẦN B NỘI DUNG
CHƯƠNG 1: GIỚI THIỆU
1.1Yêu cầu và chức năng hệ thống
Yêu cầu
Đây là một hệ thống đóng mở theo mã cho phép một số ít người có thể ra vào theo mã của họ Nó có thể được áp dụng làm cửa ra vào của các hệ thống can mang tính bảo mật, giới hạn số người ra vào như: cửa ra vào cơ quan, nhà máy, các khu quan trọng,…
Trên cơ sở đó hệ thống phải có các yêu cầu cơ bản sao:
+ Tính an toàn: có chức năng bảo vệ
+ Dễ sử dụng:có đầy đủ hướng dẫn để người dùng sử dụng
Chức năng
Hệ thống quản lý một số mã ứng với một số người được cho phép ra vào ở cửa này và được cho phép hoạt động trên cơ sở các mã này
Password gồm 4 chữ số, trong đó có một password admin và các password user
Hệt thống giao tiếp với người dùng thông qua một bàn phím điều khiển và hiển thị trên màn hình LCD
Bàn phìm gồm các số 0-9,* <#
Khi bắt đầu người điều khiển nhấn nút # để đăng nhập, nhập password vào
Chọn tài khoản người dùng Sau đó nhập password vào
Nếu nhập đúng password, sẽ có 2 lựa chọn tiếp theo:
+ Ấn 1 : Để mở cửa( mô phỏng bằng việc bật đèn LED xanh)
+ Ấn * : Để đổi password Nhập password mới vào và ấn # để lưu Hệ thống sẽ trở lại trang thái đăng nhập cho người dùng
+ Nếu password sai: ấn # để đăng nhập lại như lúc đầu
+ Nếu cùng một tài khoản mà nhập sai 3 lần liên tiếp Hệ thống sẽ bị khóa và báo động( mô phỏng bằng LED đỏ nhấp nháy và phát còi báo động)
Trang 51.3Kế hoạch, phân công công việc
Tài liệu: Phạm Khánh Duy + Phạm Lê Quốc Trung + Trần Tuấn Đạt
Trang 62.1 Sơ đồ các khối chức năng
Sơ đồ các khối chức năng
Trang 72.2 Chức năng các khối
Khối nguồn
Nhằm nhiệm vụ cung cấp điện áp +5V, ±12V luôn ổn định cho mạch điện và vi điều khiển
Khối Vi điều khiển: kit OLIMEXINO-STM32F103RB
Xử lý các thông tin, nhận thông tin từ bàn phím , đưa đến điều khiển động cơ và đưa thông tin hiển thị ra LCD thông báo cho người dùng
─ Cốt lõi: ARM 32-bit Cortex ™-M3 CPU
─ Tần số tối đa 72 MHz, 1,25 DMIPS / MH z (Dhrystone 2.1)
biểu diễn tại 0 chờ đợi truy cập bộ nhớ trạng thái
─ Nhân chu trình đơn và bộ phận phần cứng
─ 256-512 Kbytes bộ nhớ Flash
─ Lên đến 64 Kbytes SRAM
─ Linh hoạt điều khiển bộ nhớ tĩnh với 4 Chip Select Hỗ trợ
Compact Flash, SRAM, PSRAM, NOR và NAND kỷ niệm
─ LCD giao diện song song, 8080/6800 chế độ
─ Đồng hồ, thiết lập lại và quản lý cung cấp
─ sleep, Stop và wait
─ VBAT cung cấp cho RTC và đăng ký sao lưu
─ 3 x 12-bit, 1 ms chuyển đổi A / D (lên đến 21 kênh)
─ Phạm vi chuyển đổi: 0-3,6 V
─ Ba mẫu và giữ khả năng
─ Cảm biến nhiệt độ
─ D/A chuyển đổi 2x12-bit
─ DMA: 12 kênh điều khiển DMA
─ Thiết bị ngoại vi hỗ trợ: giờ, ADC, DAC, SDIO, tôi 2 Ss,SPIs, tôi 2 Cs và USARTs
─ Chế độ gỡ lỗi
─ Gỡ rối nối tiếp dây (SWD) & JTAG giao diện
Trang 8─ 112 I/O
─ 51/80/112 I/ O, tất cả mappable trên 16 vector ngắt ngoài và gần như tất cả 5V
─ 16-bit, 4 IC/OC/PWM hoặc xung truy cập và vuông góc (tăng) mã hóa đầu vào
2x16-bit điều khiển động cơ PWM thời gian chết và dừng khẩn cấp
─ 2 giờ x cơ quan giám sát (độc lập và cửa sổ)
─ SysTick giờ: một downcounter 24-bit
─ 2 x 16-bit giờ cơ bản để lái xe DAC
─ Lên đến 13 giao diện truyền thông
─ Lên đến 2 x tôi 2 giao diện C (SMBus / PMBus)
─ Lên đến 5 USARTs (7816 giao diện theo tiêu chuẩn ISO,LIN, IrDA khả năng, kiểm soát modem)
─ Lên đến 3 SPIs (18 Mbit / s), 2 với I2S giao diện ghép
─ CAN giao diện (2.0b Active)
─ Giao diện USB 2.0 tốc độ đầy đủ
─ Giao diện SDIO
─ Đơn vị tính CRC, 96-bit ID duy nhất
─ ECOPACK gói
Môi trường phần cứng:
─ Chip ARM Cortex m3-STM32F103RCT6 được cấp nguồn +3.3V thông qua cổng USB của
PC, dùng thạch anh ngoài 8MHz, sau khi qua bộ nhân tần số đưa vào CPU lên tới 72MHz
─ 2 pin Tx và Rx củ a USART1 lần lượt là: PA9, PA10
Môi trường phần mềm:
─ Chương trình được viết dựa trên nền tảng bộ thư viện chuẩn CMSIS do công ty ARM đề xuất và
bộ thư viện truy xuất ngoại vi tương thích chuẩn CMSIS do công ty ST cung cấp
Chương trình được biên dị ch b ằng công c ụ quen thu ộc: Keil v4.01
─ Cổng USART1 được cài đặt các thông s ố hoạt động như sau:
+ BaudRate = 115200 baud
+ Word Length = 8 Bits
+ One Stop Bit
+ No parity
+ Hardware flow control disabled (RTS and CTS signals)
+ Receive and transmit enabled
Trang 9Khối bàn phím: Keypad 3x4
Bàn phím gồm các nút Mỗi nút là một bộ phận đogn1 mở bằng cơ khí Các mã của bàn phím
có thể được tạo ra trực tiếp hoặc bằng phép quét hàng và quét cột
Trang 10Có 256 Byte EEPROM nội
Dữ liệu được lưu lại trong 100 năm
Có thể ghi tối đa 1 triệu lần
Hỗ trợ phần cứng bảo vệ dữ liệu ghi vào
Sử dụng kết nối 2 dây I2C: Chân SCL là chân tạo xung nhịp được điều khiển bởi vi điều khiển Chân SDA là chân truyền dữ liệu giữa vi điều khiển và 24C02
Sơ đồ kết nối
Khối mở cửa: Điều khiển đóng mở cửa (mô phỏng bằng LED xanh sáng, tắt)
Khối báo động: Cảnh báo khi nhập sai mật khẩu quá 3 lần Thông qua hệ thống chông báo động
Trang 112 3 Source Code
Hệ thống sẽ cấp sẵn một số password của các cửa từ 0 đến 9 Các các password này sẽ được lưu trong bộ nhớ EEPROM Khi khởi động hệ thống, chương trình sẽ đọc các dữ liệu trong bộ nhớ này Đầu tiên ta sẽ tiến hành chọn mã số cửa muốn mở, đó là các mã số từ 0 đến 9 Sau khi đã xác định được cửa, ta sẽ tiến hành nhập password đã được cài đặt sẵn, nếu nhập sai hệ thống sẽ yêu cầu bấm phím # để nhập lại Nếu nhập đúng, hãy bấm phím số 1 để cửa mở, ngoài ra nếu muốn đổi password mới ta nhấn phím *
Lưu ý: Khi ở cửa ADMIN, ta có thể xem password các cửa khác bằng cách nhấn phím 0, sau đó
chọn mã số cửa muốn xem
Project gồm các module thực hiện các chức năng của các khối như sau:
Tham Bien : Khong.
Tra Ve : 1: Neu co nut duoc an.
0: Neu khong co nut duoc an.
return 0;
}
Trang 12/******************************************************************************* Noi Dung : Keo hang thu i xuong muc logic 0, de kiem tra co nut duoc an tai hang thu i hay khong.
Tham Bien : i: vi tri hang can kiem tra.
Tham Bien : Khong.
Tra Ve : 0: Neu khong co nut duoc an.
khac 0: Gia tri cua nut an.
if(!COL0) return KEY_3X4[i][0];
if(!COL1) return KEY_3X4[i][1];
if(!COL2) return KEY_3X4[i][2];
} }
}
return 0;
}
Trang 13Định nghĩa chân Keypad
//Keypad3x4
Tham Bien : Khong.
Trang 14delay_ms(50);
}
/******************************************************************************* Noi Dung : Gui 4 bit du lieu den LCD.
Tham Bien : Data: 4 bit thap cua Data chua 4 bit du lieu can gui.
Tham Bien : command: byte du lieu can gui.
Tham Bien : Khong.
Trang 15Tham Bien : x: vi tri cot cua con tro x = 0 - 15.
y: vi tri hang cua con tro y= 0,1.
Tham Bien : Khong.
Tra Ve : Khong.
Trang 16Tham Bien : Khong.
Tham Bien : Khong.
Trang 17Định nghĩa các chân LCD:
//LCD16x2
// Ham start I2C
void start( void)
Trang 18// Ham stop I2C
void stop( void)
Trang 19Tham Bien : Khong.
Tham Bien : address: Dia chi can doc du lieu.
Tra Ve : Gia tri du lieu doc duoc.
Trang 20return Data;
}
/******************************************************************************* Noi Dung : Viet du lieu vao EEPROM.
Tham Bien : address: Dia chi can ghi du lieu.
Data : Gia tri du lieu can ghi.
Tham Bien : address: Dia chi bat dau ghi du lieu.
*s : Chuoi du lieu can ghi.
Tham Bien : address: Dia chi bat dau ghi du lieu.
*s : Chuoi du lieu can doc.
lenght : Do dai du lieu can doc.
Trang 212.4 Mạch nguyên lý, mạch layout
Mạch nguyên lý sử dụng phần mềm Antium:
Trang 22Mạch layout:
Trang 23CHƯƠNG 3 TỔNG KẾT
3.1 Kết luận
Trên cơ sở lí thuyết đã học, chúng em đã thiết kế hệ thống khóa với độ tin cậy có thể chấp nhận được dựa vào chức năng quản lí chương trình bằng password với quy mô đơn giản hơn Để ứng dụng vào thực tế, hệ thống này còn cần được chỉnh sửa để tăng tính ổn định và kết nối với bộ phận
cơ khí đóng mở cửa
Hiện nay, những hệ thống kiểm soát ra vào theo mã đã sử dụng những hình thức quản lí tiên tiến hơn như: thẻ từ, vân tay tuy nhiên chi phí còn rất cao Một hệ thống quản lí như chúng em tập thiết kế vẫn còn có những ứng dụng nhất định
3.2 Đánh giá, phương hướng phát triển
Mạch còn có 1 số khuyết điểm như :
Do chỉ báo động bằng tín hiệu đèn hoặc chuông nên khi người dùng ở cách xa nơi báo động thì không hay biết gì về việc có người dò pass hay không Vì vậy hướng phát triển của đồ án là thông báo cho chủ nhân khi có người nhập pass sai 3 lần để kịp thời xử lý hoặc thay đổi password.việc thông báo từ xa có thể sử dụng sóng radio hay thông báo qua điện thoại, có thể gởi tin nhắn chẳng hạn
Hệ thống khóa số sử dụng LCD với hướng dẫn bằng tiếng Việt không dấu, không thân thiện với người dùng lắm Ta có thể sử dụng CGRAM để vẽ các ký tự tiếng Việt có dấu giúp người Việt dễ
sử dụng hơn
Mặt khác với 10 chữ số từ 09 thì mức độ bảo mật chưa cao lắm Ta có thể sử dụng các ký tự latin
để làm password để tăng tính bảo mật cho hệ thống
Do là thiết kế đầu tiên nên không thể tránh khỏi sai sót nhất định Chúng em xin chân thành cảm ơn
sự giúp đỡ và hướng dẫn của các thầy giáo và các anh chị, các bạn trong thời gian vừa qua Mong
rằng sẽ nhận được nhiều đóng góp ý kiến để bản thiết kế này và những bản thiết kế sau ngày càng được hoàn thiện hơn
Trang 24
PHẦN C TÀI LIỆU THAM KHẢO
http://banlinhkien.vn/
www.arm.vn/
…