Phát triển hệ điều hành thời gian thực trên chip arm ứng dụng trong hệ thống lưu trữ thông minh
- 129 trang
- file .pdf
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống
lưu trữ thông minh
ĐẶNG VĂN KHỞI
[email protected]
Ngành Kỹ thuật điều khiển và tự động hóa
Giảng viên hướng dẫn: PGS.TS. Nguyễn Quang Địch
Viện: Điện
HÀ NỘI, 2020
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống
lưu trữ thông minh
ĐẶNG VĂN KHỞI
[email protected]
Ngành Kỹ thuật điều khiển và tự động hóa
Giảng viên hướng dẫn: PGS.TS. Nguyễn Quang Địch
Chữ ký của GVHD
Viện: Điện
HÀ NỘI, 2020
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ
Họ và tên tác giả luận văn: Đặng Văn Khởi
Đề tài luận văn: Phát triển hệ điều hành thời gian thực trên chip ARM ứng
dụng trong hệ thống lưu trữ thông minh.
Chuyên ngành: Kỹ thuật điều khiển và tự động hóa
Mã số HV: CB180120
Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác nhận
tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày
30/10/2020 với các nội dung sau:
Chương 2: - Sửa lại câu từ bất hợp lý trong luận văn.
Chương 3: - Loại bỏ những phần trình bày lan man.
Chương 4: - Sửa lại các lưu đồ thuật toán chưa chính xác.
- Làm rõ ý nghĩa, nhiệm vụ của các task.
Ngày 11 tháng 11 năm 2020
Giáo viên hướng dẫn Tác giả luận văn
PGS.TS. Nguyễn Quang Địch Đặng Văn Khởi
CHỦ TỊCH HỘI ĐỒNG
PGS.TS. Nguyễn Phạm Thục Anh
LỜI CẢM ƠN
Trong quá trình thực hiện luận văn “Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống lưu trữ thông minh” tôi đã nhận được sự
giúp đỡ tận tình của thầy hướng dẫn cùng tập thể cán bộ đang làm việc tại Viện
Kỹ thuật điều khiển và tự động hóa, Đại học Bách Khoa Hà Nội. Viện không chỉ
tạo điều kiện trong việc hỗ trợ các trang thiết bị, vật tư cần thiết đáp ứng định
hướng phát triển mà luận văn hướng tới mà còn tạo ra môi trường học tập, nghiên
cứu sôi nổi, hiệu quả và chuyên nghiệp. Chính những yếu tố đó đã góp phần không
nhỏ để tôi có thể hoàn thành luận văn của mình.
Qua đây, tôi cũng xin gửi lời cám ơn đến Thầy hướng dẫn là PGS.TS.
Nguyễn Quang Địch – Giám đốc viện Kỹ thuật điều khiển và tự động hóa, cùng
tất cả cán bộ đang làm việc tại Viện. Là một cán bộ của Viện, tôi cảm thấy rất tự
hào khi được làm việc cùng với một tập thể đoàn kết và có kiến thức chuyên môn
cao.
Hà Nội, ngày 11 tháng 11 năm 2020
Tác giả
Đặng Văn Khởi
MỤC LỤC
DANH MỤC HÌNH VẼ .......................................................................................... I
DANH MỤC BẢNG BIỂU ................................................................................. III
DANH MỤC TỪ VIẾT TẮT ............................................................................... IV
LỜI NÓI ĐẦU ....................................................................................................... 1
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG LƯU TRỮ THÔNG MINH......... 2
1.1. ĐẶT VẤN ĐỀ................................................................................................. 2
1.2. TỔNG QUAN VỀ HỆ THỐNG LƯU TRỮ TÀI LIỆU ............................................. 2
1.2.1. Tổng quan về hệ thống lưu trữ tài liệu truyền thống ........................... 2
1.2.2. Tổng quan về hệ thống lưu trữ tài liệu thông minh ............................. 3
1.2.3. Đánh giá ............................................................................................... 4
1.3. TỔNG QUAN CẤU TRÚC XÂY DỰNG HỆ THỐNG LƯU TRỮ THÔNG MINH ........ 6
1.3.1. Tổng quan các tính năng trong hệ thống lưu trữ thông minh .............. 6
1.3.2. Cấu trúc thiết kế cho hệ thống lưu trữ thông minh .............................. 8
1.4. TỔNG KẾT CHƯƠNG 1 ................................................................................ 11
CHƯƠNG 2. CƠ SỞ VÀ CẤU TRÚC THIẾT KẾ PHẦN CỨNG .................... 12
2.1. ĐẶT VẤN ĐỀ............................................................................................... 12
2.2. CƠ SỞ THIẾT KẾ MẠCH PHẦN CỨNG ........................................................... 12
2.3. THIẾT KẾ PHẦN CỨNG CHO HỆ THỐNG LƯU TRỮ THÔNG MINH .................. 13
2.3.1. Thiết kế mạch đếm người thu ............................................................ 13
2.3.2. Thiết kế mạch điều khiển động cơ ..................................................... 14
2.3.3. Thiết kế mạch điều khiển trung tâm .................................................. 17
2.4. TỔNG KẾT CHƯƠNG 2 ................................................................................ 23
CHƯƠNG 3. XÂY DỰNG MÔI TRƯỜNG NHÚNG HỆ ĐIỀU HÀNH THỜI
GIAN THỰC TRÊN CHIP ARM ............................................................... 24
3.1. PHÂN TÍCH VÀ LỰA CHỌN HƯỚNG TIẾP CẬN .............................................. 24
3.1.1. Phương pháp lập trình nhúng ............................................................ 24
3.2. CƠ SỞ PHÁT TRIỂN HỆ ĐIỀU HÀNH THỜI GIAN THỰC RTOS ....................... 28
3.2.1. Phân loại RTOS ................................................................................. 28
3.2.2. Cơ sở lựa chọn Open Source RTOS phù hợp với chip ARM ........... 29
3.3. XÂY DỰNG MÔI TRƯỜNG NHÚNG ............................................................... 34
3.3.1. Định hướng môi trường phát triển code nhúng ................................. 34
3.3.2. Xây dựng môi trường nhúng trên chip ARM .................................... 39
3.4. TỔNG KẾT CHƯƠNG 3 ................................................................................ 40
CHƯƠNG 4. PHÁT TRIỂN THUẬT TOÁN TRÊN NỀN TẢNG HỆ ĐIỀU
HÀNH THỜI GIAN THỰC CHO HỆ THỐNG LƯU TRỮ THÔNG MINH
...................................................................................................................... 41
4.1. PHƯƠNG PHÁP TIẾP CẬN ............................................................................ 41
4.2. CƠ SỞ XÂY DỰNG THUẬT TOÁN CHO CÁC TASK ........................................ 42
4.2.1. Cấu trúc thiết kế nhúng trên mạch điều khiển trung tâm của tủ Slave
……………………………………………………………………………..42
4.2.2. Cở sở phát triển thuật toán trên mạch điều khiển trung tâm tủ Slave 44
4.3. XÂY DỰNG, PHÁT TRIỂN THUẬT TOÁN CHO CÁC TASK .............................. 46
4.3.1. Xây dựng các task cho mạch điều khiển trung tâm tủ Slave............. 46
4.3.2. Xây dựng frame truyền nhận dữ liệu giữa các task với ngoại vi ...... 48
4.3.3. Phát triển thuật toán cho các task ...................................................... 50
4.4. TỔNG KẾT CHƯƠNG 4 ................................................................................ 73
CHƯƠNG 5. KẾT QUẢ ĐẠT ĐƯỢC .................................................................74
5.1. PHẦN CỨNG ............................................................................................... 74
5.2. PHẦN MỀM................................................................................................. 77
5.3. TỔNG KẾT CHƯƠNG 5 ................................................................................ 79
KẾT LUẬN ...........................................................................................................80
TÀI LIỆU THAM KHẢO .................................................................................... 81
PHỤ LỤC..............................................................................................................83
DANH MỤC HÌNH VẼ
Hình 1.1 Hình ảnh tủ lưu trữ tài liệu truyền thống................................................. 2
Hình 1.2 Hình ảnh hệ thống lưu trữ tài liệu thông minh ........................................ 3
Hình 1.3 Sơ đồ cấu trúc hệ thống lưu trữ thông minh ......................................... 10
Hình 2.1 Sơ đồ kết nối các mảng mạch tại tủ Slave và Outmost Slave ............... 13
Hình 2.2 Sơ đồ nguyên lý mạch đếm người thu .................................................. 14
Hình 2.3 Động cơ BLDC 120W có hộp số và Driver động cơ ............................ 15
Hình 2.4 Sơ đồ nguyên lý mạch điều khiển động cơ BLDC ............................... 16
Hình 2.5 Nguồn cấp cho toàn bộ mạch điều khiển trung tâm.............................. 19
Hình 2.6 Sơ đồ nguyên lý thiết kế chip ARM, truyền thông CAN, RS485 2 dây 20
Hình 2.7 Sơ đồ nguyên lý kết nối với các ngoại vi (1) ........................................ 21
Hình 2.8 Sơ đồ nguyên lý kết nối với các ngoại vi (2) ........................................ 22
Hình 3.1 Pseudo code của siêu vòng lặp (Super-loop) ........................................ 25
Hình 3.2 Thành phần của RTOS .......................................................................... 26
Hình 3.3 Kiến trúc hệ điều hành thời gian thực FreeRTOS................................. 29
Hình 3.4 Kiến trúc hệ điều hành ChibiOS/RT ..................................................... 31
Hình 3.5 Kiến trúc hệ điều hành thời gian thực TinyOS ..................................... 32
Hình 3.6 Phát triển code nhúng trên chip ARM sử dụng IDE ............................. 35
Hình 3.7 Hệ điều hành Ubuntu ............................................................................ 36
Hình 3.8 Phát triển code nhúng trên chip ARM không dùng IDE ....................... 37
Hình 4.1 Sơ đồ nhúng hệ điều hành FreeRTOS trên chip ARM (Nguồn Hình 3.11)
.............................................................................................................................. 43
Hình 4.2 Phát triển các Task trên FreeRTOS....................................................... 45
Hình 4.3 Xây dựng các task thực hiện trong Timer Service Task ....................... 45
Hình 4.4 Kỹ thuật “Deferred Interrupt Processing” trong xử lý tín hiệu ngắt ..... 46
Hình 4.5 Mô hình các task được xây dựng cho chip ARM tại tủ Slave .............. 47
Hình 4.6 Lưu đồ thuật toán frame giao tiếp với mạch điều khiển động cơ ......... 52
Hình 4.7 Lưu đồ thuật toán phát triển task "Xử lý truyền thông Modbus RTU" 53
Hình 4.8 Lưu đồ thuật toán phát triển task "Đọc nhiệt độ, độ ẩm trong" ............ 54
Hình 4.9 Lưu đồ thuật toán xử lý "Sự kiện cháy trong" ...................................... 55
Hình 4.10 Lưu đồ thuật toán xử lý "Sự kiện CAN" ............................................. 55
i
Hình 4.11 Lưu đồ thuật toán xử lý "Sự kiện USART1" ...................................... 56
Hình 4.12 Lưu đồ thuật toán xử lý "Sự kiện USART2" ...................................... 57
Hình 4.13 Lưu đồ thuật toán xử lý "Sự kiện tài liệu nhô" ................................... 58
Hình 4.14 Lưu đồ thuật toán phát triển task "Xử lý truyền thông CAN" ............ 60
Hình 4.15 Lưu đồ thuật toán phát triển task "Dừng khẩn cấp"............................ 61
Hình 4.16 Lưu đồ thuật toán phát triển task "Xử lý tình huống cháy trong" ...... 62
Hình 4.17 Lưu đồ thuật toán phát triển task "Xử lý tình huống cháy ngoài" ...... 63
Hình 4.18 Lưu đồ thuật toán phát triển task "Đăng nhập hệ thống".................... 63
Hình 4.19 Lưu đồ thuật toán phát triển task "Đăng xuất hệ thống" .................... 64
Hình 4.20 Lưu đồ thuật toán phát triển task "Thông gió hệ thống" .................... 65
Hình 4.21 Lưu đồ thuật toán phát triển task "Thông gió hệ thống" (tiếp) ........... 66
Hình 4.22 Lưu đồ thuật toán phát triển task "Điều khiển tủ ra xa Master" ......... 67
Hình 4.23 Lưu đồ thuật toán phát triển task "Điều khiển tủ lại gần Master" ...... 68
Hình 4.24 Lưu đồ thuật toán task "Đọc dữ liệu từ mạch đếm người thu" ........... 69
Hình 4.25 Lưu đồ thuật toán phát triển task "Tắt hiển thị mọi cảnh báo" ........... 70
Hình 4.26 Lưu đồ thuật toán phát triển task "Hiển thị số người trong tủ" .......... 70
Hình 4.27 Lưu đồ thuật toán phát triển task "Hiển thị khoảng cách giữa 2 tủ"... 71
Hình 4.28 Lưu đồ thuật toán phát triển task "Hiển thị nhiệt độ, độ ẩm trong" ... 72
Hình 4.29 Lưu đồ thuật toán phát triển task "Hiển thị nhiệt độ, độ ẩm ngoài" ... 72
Hình 4.30 Lưu đồ thuật toán phát triển task "Idle task" ...................................... 73
Hình 5.1 Hình ảnh mạch điều khiển trung tâm tại tủ Slave ................................. 74
Hình 5.2 Các ngoại vi tại tủ Slave ....................................................................... 75
Hình 5.3 Giao diện đăng nhập hệ thống .............................................................. 76
Hình 5.4 Giao diện màn hình điều khiển ............................................................. 76
Hình 5.5 Sơ đồ hình cây phát triển mã nguồn chip ARM cho tủ Slave .............. 77
Hình 5.6 Tạo môi trường debug chip trên OpenOCD ......................................... 78
Hình 5.7 Nhúng mã nguồn (.elf extension) vào GDB Server phục vụ debug code
.............................................................................................................................. 79
ii
DANH MỤC BẢNG BIỂU
Bảng 1.1 Bảng so sánh hệ thống lưu trữ truyền thống với hệ thống lưu trữ thông
minh ........................................................................................................................ 4
Bảng 3.1 Bảng so sánh Open Source RTOS và Licensed RTOS ........................ 28
Bảng 3.2 Bảng so sánh các hệ điều hành thời gian thực ...................................... 33
Bảng 3.3 Bảng so sánh phát triển code nhúng dùng IDE và không dùng IDE .... 37
Bảng 4.1 Ký hiệu các quy ước về các biến khoảng cách ..................................... 51
Bảng 4.2 Các trường hợp của tủ khi thực hiện task "Thông gió hệ thống" ......... 64
Bảng 4.3 Các trường hợp của tủ khi thực hiện task "Đk xa Master" ................... 66
iii
DANH MỤC TỪ VIẾT TẮT
Viết tắt Ghi chú Tiếng Anh Ý nghĩa
ADC Analog to Digital Convert Bộ chuyển đổi tương tự sang số
Application Programming
API Giao diện lập trình ứng dụng
Interface
ARM Application – Real-time –
Microcontroller
BLDC Brushless Direct Current Một chiều không chổi than
CAN Controller Area Network
CPU Central Processing Unit Bộ xử lý trung tâm
CRC Cyclic Redundancy Check Mã check lỗi dữ liệu
Bộ chuyển đổi điện áp 1 chiều
DC/DC Direct Current/ Direct Current
sang 1 một chiều
DSP Digital Signal Processor Bộ xử lý tín hiệu số
GCC GNU Compiler Collection Trình biên dịch
GNU GNU’s Not Unix
GDB GNU Debugger Trình gỡ lỗi
GUI Graphic User Interface Giao diện đồ họa người dùng
HAL Hardware Abstraction Layer Lớp phần cứng trừu tượng
HMI Human-Machine Interface Màn hình công nghiệp
Giao thức truyền tin nối tiếp đồng
I2C Inter-Integrated Circuit
bộ
IC Integrated Circuit Chip
IoT Internet of Things Kết nối vạn vật
IPC Industrial Pannel PC Máy tính công nghiệp
ISR Interrupt Service Routine Dịch vụ ngắt
MCU Micro-Controller Unit Vi điều khiển
MPU Micro-Processor Unit Vi xử lý
MPU Memory Protection Unit Đơn vị bảo vệ bộ nhớ
Ngôn ngữ C cho hệ thống mạng
nesC Network Embedded System C
nhúng
iv
OpenOCD Open on Chip Debugger Trình gỡ lỗi trên chip
OS Operating System Hệ điều hành
PC Personal Computer Máy tính cá nhân
RAM Random Access Memory
ROM Read Only Memory
PWM Pulse Width Modulation Điều chế độ rộng xung
RTOS Real-time Operating System Hệ điều hành thời gian thực
SPI Serial Peripheral Interface Giao tiếp ngoại vi nối tiếp
TCL Tickle Programming language Ngôn ngữ lập trình bậc cao
TCP/IP Internet Protocol Suite Giao thức truyền thông liên mạng
Universal Asynchronous Truyền nhận nối tiếp không đồng
UART
Receiver Transmitter bộ
UDP User Datagram Protocol Giao thức dữ liệu người dùng
USB Universal Serial Bus Bus nối tiếp kết nối ngoại vi
v
LỜI NÓI ĐẦU
1. Lý do chọn đề tài
Xuất phát từ nhu cầu thực tiễn, yêu cầu tất yếu của cuộc cách mạng 4.0, lưu
trữ tài liệu, văn bản ngày càng được các doanh nghiệp, công ty, nhà nước,… chú
trọng quan tâm, đặc biệt là khi số lượng tài liệu cần lưu trữ cực kỳ lớn. Điều này
dẫn tới nhu cầu tất yếu về một hệ thống thông minh có khả năng lưu trữ, bảo quản
và truy xuất tài liệu hoạt động chính xác, ổn định, đáp ứng “real-time”. Chính vì
vậy, việc xây dựng, phát triển hệ thống lưu trữ thông minh thành một hệ thống
nhúng thời gian thực là một bước đi phù hợp với xu thế hiện nay.
2. Mục tiêu và phạm vi nghiên cứu
Mục tiêu của luận văn là phát triển mã nguồn trên nền tảng hệ điều hành
thời gian thực đáp ứng các yêu cầu công nghệ của một sản phẩm thương mại xây
dựng trên cơ sở một hệ thống nhúng.
Phạm vi nghiên cứu của đề tài gói gọn trong những điểm sau:
- Nghiên cứu yêu cầu công nghệ cho hệ thống lưu trữ thông minh.
- Nghiên cứu hệ thống nhúng.
- Nghiên cứu hệ điều hành thời gian thực.
- Nghiên cứu các phương pháp lập trình, xây dựng mã nguồn.
- Nghiên cứu dòng chip ARM, tiếp cận định hướng lập trình cấp độ
thanh ghi (hạn chế việc sử dụng API có sẵn).
- Nghiên cứu tổ chức, xây dựng, phân vùng bộ nhớ trên chip.
3. Tóm tắt nội dung luận văn
Nội dung của luận văn “Phát triển hệ điều hành thời gian thực trên chip
ARM ứng dụng trong hệ thống lưu trữ thông minh” được trình bày chi tiết trong 5
chương:
- Chương 1: Tổng quan về hệ thống lưu trữ thông minh.
- Chương 2: Cơ sở và cấu trúc thiết kế phần cứng.
- Chương 3: Xây dựng môi trường nhúng hệ điều hành thời gian thực trên
chip ARM.
- Chương 4: Phát triển thuật toán trên nền tảng hệ điều hành thời gian thực
cho hệ thống lưu trữ thông minh.
- Chương 5: Kết quả đạt được.
1
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG LƯU
TRỮ THÔNG MINH
1.1. Đặt vấn đề
Bảo quản tài liệu lưu trữ là quá trình áp dụng các biện pháp khoa học, kỹ
thuật nhằm kéo dài tuổi thọ và bảo đảm an toàn cho tài liệu lưu trữ [1]. Công việc
bảo quản tài liệu lưu trữ bao gồm: xây dựng, cải tạo kho lưu trữ; trang thiết bị kỹ
thuật bảo quản; xử lý kỹ thuật bảo quản; tổ chức tài liệu trong kho lưu trữ; tu bổ
và phục chế tài liệu lưu trữ. Việc xử lý kỹ thuật bảo quản được thực hiện bao gồm
các biện pháp kỹ thuật chống hoặc hạn chế những ảnh hưởng của khí hậu, môi
trường, công trùng và các tác nhân khác. Những công việc phổ thông nhất trong
xử lý kỹ thuật là xử lý nhiệt độ, độ ẩm với các thiết bị chuyên dụng, khử trùng,
khử axit để hạn chế hư hại tài liệu. Do vậy việc xây dựng, phát triển hệ thống lưu
trữ tài liệu cần đáp ứng được các tiêu chuẩn chất lượng đặc biệt là tạo ra được môi
trường lưu trữ tối ưu để bảo quản tài liệu.
1.2. Tổng quan về hệ thống lưu trữ tài liệu
1.2.1. Tổng quan về hệ thống lưu trữ tài liệu truyền thống
Hệ thống lưu trữ tài liệu truyền thống được chỉ ra trong Hình 1.1:
Hình 1.1 Hình ảnh tủ lưu trữ tài liệu truyền thống
Hệ thống có cấu trúc cơ khí đơn giản gồm các tủ lưu trữ được đặt cố định
và cách nhau một khoảng không đủ rộng để cho người dùng có thể lấy tài liệu được
đặt trong các khoang tủ. Điều này sẽ làm tăng đáng kể diện tích phòng lưu trữ.
Ngoài ra, hệ thống không được trang bị thêm bất kỳ hệ thống điều khiển, giám sát
2
nào. Môi trường lưu trữ tài liệu trong các tủ lưu trữ phụ thuộc hoàn toàn vào môi
trường của phòng lưu trữ và hệ thống không có khả năng phản hồi thông tin, dữ
liệu về môi trường lưu trữ. Điều này sẽ khó đảm bảo được môi trường lưu trữ cho
tài liệu là tối ưu.
Công việc tìm kiếm trên hệ thống lưu trữ tài liệu truyền thống được thực
hiện một cách khá thủ công. Theo đó, người dùng sẽ tìm kiếm tài liệu thông qua
các bảng chỉ dẫn về khu vực lưu trữ nhóm các tài liệu có cùng một thuộc tính nào
đó được dán ở mặt ngoài của mỗi tủ. Thuộc tính để nhóm các tài liệu thường được
sử dụng đó là sắp xếp theo bảng chữ cái, theo chủ đề hoặc theo mã số được mã hóa
cho tài liệu,…
1.2.2. Tổng quan về hệ thống lưu trữ tài liệu thông minh
Hệ thống lưu trữ tài liệu thông minh được chỉ ra trong Hình 1.2:
Hình 1.2 Hình ảnh hệ thống lưu trữ tài liệu thông minh
Hệ thống có cấu trúc cơ khí gồm nhiều tủ lưu trữ được đặt sát cạnh nhau có
khả năng di chuyển nhờ hệ thống truyền động động cơ – bánh răng – dây xích –
ray dẫn hướng được thiết kế dưới chân tủ và nền nhà của phòng lưu trữ. Điều này
sẽ giúp tiết kiệm tối đa không gian lưu trữ bởi người dùng đơn giản là lấy tài liệu
bằng cách kích mở tủ lưu trữ có chứa tài liệu đó. Khi ấy hệ thống sẽ tạo ra 1 lối đi
đủ rộng tại tủ có chứa tài liệu người dùng cần (trong khi các tủ còn lại vẫn nằm sát
cạnh nhau).
Bên cạnh đó, hệ thống còn được trang bị hệ thống giám sát, điều khiển có
nhiệm vụ thu thập dữ liệu về điều kiện của môi trường lưu trữ. Từ đó tự động phân
tích dữ liệu và đưa ra tín hiệu điều khiển phù hợp. Hệ thống có khả năng tương tác
với người dùng (tức người dùng có thể ra lệnh điều khiển cho hệ thống) từ việc
3
thiết lập thông số, thiết lập bảo mật đến việc tìm kiếm tài liệu thông qua màn hình
hiển thị được đặt tại mỗi tủ trong hệ thống.
Công việc tìm kiếm tài liệu cũng trở nên đơn giản hơn nhiều so với hệ thống
lưu trữ truyền thống. Người dùng chỉ việc nhập tên hoặc mã của tài liệu cần tìm
kiếm tại bất kỳ màn hình hiển thị được đặt tại bất kỳ tủ nào. Sau đó hệ thống sẽ tự
động phân tích dữ liệu người dùng nhập vào với cơ sở dữ liệu của hệ thống. Nếu
tài liệu mà người dùng cần tìm kiếm được lưu trữ trong hệ thống, khi đó hệ thống
sẽ thông báo cho người dùng biết vị trí của tài liệu đang nằm ở đâu đồng thời kích
mở khoang giá đang chứa tài liệu đó.
Ngoài ra, hệ thống lưu trữ thông minh có thể được trang bị thêm tính năng
bảo mật giúp ngăn chặn truy cập từ bên ngoài. Khi đó người dùng cần phải đăng
nhập vào hệ thống thông qua màn hình hiển thị để có thể vận hành, điều khiển,
thiết lập các thông số, tìm kiếm tài liệu,….
1.2.3. Đánh giá
Sau khi tìm hiểu khái quát về 2 hệ thống lưu trữ truyền thống và thông minh,
ta rút ra được bảng so sánh sau:
Bảng 1.1 Bảng so sánh hệ thống lưu trữ truyền thống với hệ thống lưu trữ thông minh
Hệ thống lưu trữ truyền Hệ thống lưu trữ thông
Tiêu chí đánh giá
thống minh
Giải pháp tối ưu cho tiết
Diện tích Cần nhiều không gian lưu trữ.
kiệm không gian lưu trữ.
Kết cấu phức tạp do có thêm
phần điều khiển. Ngoài ra
kết cấu cơ khí cũng phức tạp
Kết cấu Kết cấu cơ khí đơn giản. hơn khi được trang bị thêm
cơ cấu truyền động động cơ
– bánh răng – dây xích, ray
dẫn hướng.
Không có hệ thống đánh giá, Được trang bị hệ thống cảm
thu thập dữ liệu về môi biến nhiệt độ, độ ẩm, hệ
Bảo quản tài liệu trường lưu trữ tài liệu => thống giám sát cho phép
không bảo đảm điều kiện lưu theo dõi điều kiện môi
trữ tối ưu. trường lưu trữ => kiểm soát
và đưa ra giải pháp lưu trữ
tối ưu cho tài liệu.
4
Tài liệu được đánh số một Tài liệu được số hóa trước
cách thủ công, phải tuân thủ khi được sắp xếp lên các giá,
theo 1 quy tắc sắp xếp nhất người dùng tìm kiếm tài liệu
định và được lưu trữ thông qua màn hình hiển thị bằng
Tìm kiếm tài liệu
qua sổ sách hoặc dữ liệu số tên hoặc mã của tài liệu, sau
trên máy tính => tra cứu và đó hệ thống sẽ tiến hành tìm
tìm kiếm tài liệu khó khăn. kiếm trong cơ sở dữ liệu và
thông báo cho người dùng
biết vị trí của tài liệu cần tìm
đồng thời mở khoang giá có
chứa tài liệu đó.
Tài liệu gần như không có Người dùng bắt buộc phải
bảo mật, người dùng có thể đăng nhập vào hệ thống
sử dụng tài liệu tùy ý, bảo mật bằng tên tài khoản và mật
khả quan nhất cho tài liệu khẩu được cung cấp để có
trong hệ thống lưu trữ truyền thể vận hành, điều khiển hệ
Bảo mật tài liệu
thống là mỗi tài liệu được gắn thống cũng như tìm kiếm tài
một chip từ và hệ thống sẽ liệu. Các tài khoản cũng
báo động trong trường hợp được phân cấp quyền truy
người dùng chưa làm thủ tục cập vào các tính năng của hệ
gỡ từ cho tài liệu. thống => Tăng tính bảo mật
cho tài liệu và hệ thống.
Khả năng quản Rất khó để quản lý khi số Tài liệu được số hóa và hệ
lượng tài liệu lưu trữ lớn. thống hóa cho phép lưu trữ
lý
tài liệu với số lượng lớn.
Cung cấp khả năng mở rộng
Khả năng mở Khó mở rộng. thành nhiều chuỗi hệ thống
rộng lưu trữ dùng chung một cơ
sở dữ liệu.
Cao hơn đáng kể so với hệ
Giá thành Rẻ
thống lưu trữ truyền thống.
Như vậy, qua bảng so sánh ở trên ta dễ dàng nhận thấy ưu điểm vượt trội
của hệ thống lưu trữ thông minh so với hệ thống lưu trữ truyền thống. Tuy có giá
thành cao hơn đáng kể so với hệ thống lưu trữ truyền thống, nhưng bù lại với những
tính năng vượt trội, hệ thống lưu trữ thông minh đã và đang dần thay thế hệ thống
lưu trữ truyền thống và ngày càng được các doanh nghiệp, cơ quan, tổ chức đưa
5
vào sử dụng. Do đó, việc nghiên cứu, phát triển hệ thống lưu trữ thông minh qua
đó làm chủ công nghệ đang được các doanh nghiệp trong lĩnh vực lưu trữ, chỉnh
lý, tự động hóa quan tâm, chú trọng.
Từ những phân tích đã nêu, trong những phần sau của luận văn, tôi sẽ đi
vào xây dựng và phát triển hệ thống lưu trữ thông minh đáp ứng các tiêu chí, yêu
cầu công nghệ để đảm bảo môi trường lưu trữ tối ưu cho tài liệu.
1.3. Tổng quan cấu trúc xây dựng hệ thống lưu trữ thông minh
1.3.1. Tổng quan các tính năng trong hệ thống lưu trữ thông minh
Hệ thống lưu trữ thông minh được xây dựng gồm nhiều giá (tủ lưu trữ) được
đặt sát cạnh nhau nhằm tối ưu không gian lưu trữ.
Hệ thống lưu trữ thông minh phục vụ cho công tác lưu trữ tài liệu cần đáp
ứng được các tiêu chí sau:
- Hệ thống có khả năng di chuyển, đảm bảo không gian lưu trữ tối ưu.
- Hệ thống có khả năng điều khiển, giám sát, thu thập dữ liệu của môi
trường lưu trữ, đảm đảm điều kiện lưu trữ tối ưu.
- Hệ thống có khả năng vận hành trơn tru, đảm bảo các yếu tố an toàn cho
người dùng.
- Hệ thống có khả năng tìm kiếm tài liệu ngay tại hệ thống, hoặc thông qua
PC và smartphone.
- Hệ thống có khả năng bảo mật tài liệu
- Hệ thống có khả năng theo dõi, chuẩn đoán các thiết bị, cảm biến phục
vụ công tác bảo trì, bảo dưỡng hệ thống.
- Hệ thống có khả năng tự động theo dõi và đưa ra các cảnh báo cho người
dùng khi có sự cố xảy ra.
Để đáp ứng được các tiêu chí, yêu cầu trên, các tính năng được xây dựng
trong hệ thống lưu trữ thông minh gồm có:
❖ Tính năng truyền động
- Để hệ thống có thể di chuyển được, mỗi tủ lưu trữ được trang bị một
động cơ truyền động (riêng tủ Master sẽ không có động cơ). Vấn đề đặt ra đó là
phối hợp hoạt động của toàn bộ hệ thống để tránh va chạm trong quá trình các tủ
lưu trữ di chuyển.
❖ Tính năng bảo vệ an toàn
- Bảo vệ an toàn cho người sử dụng:
✓ Hệ thống sẽ được trang bị các bộ cảm biến đếm người để kiểm soát người
ra vào tủ lưu trữ cũng như đảm bảo an toàn cho người sử dụng khi lấy tài liệu bên
trong các khoang giá.
6
- Bảo vệ an toàn cho hệ thống trong quá trình làm việc:
✓ Để tránh trường hợp các tủ va chạm khi kết thúc hành trình, mỗi tủ sẽ được
trang bị các bộ cảm biến tiệm cận (tủ Master không cần trang bị).
✓ Để phát hiện tài liệu lưu trữ bị nhô ra ngoài gây mất an toàn trong quá trình
hệ thống hoạt động, tại mỗi tủ lưu trữ sẽ được trang bị bộ cảm biến thu - phát hồng
ngoại được đặt dọc theo tủ (riêng tủ Master không cần trang bị).
✓ Do mỗi tủ trong hệ thống đều được trang bị khóa cơ với tác dụng giữ tủ
lưu trữ ở vị trí cố định. Điều này sẽ gây ra mất an toàn trong trường hợp hệ thống
điều khiển ra lệnh di chuyển tại tủ đang bị khóa cơ. Để giải quyết vấn đề này, mỗi
tủ lưu trữ sẽ được trang bị cảm biến phát hiện khóa cơ.
✓ Mỗi hệ thống đều được giới hạn làm việc trong không gian lưu trữ nhất
định. Do vậy, tại các tủ ngoài cùng của hệ thống sẽ được trang bị thêm cảm biến
phát hiện hết hành trình nhằm đảm bảo hệ thống không đi quá hành trình bởi một
nguyên nhân bất thường nào đó.
✓ Để phát hiện các tác nhân có thể gây ra cháy, gây tổn hại cho hệ thống,
mỗi tủ lưu trữ sẽ được trang bị cảm biến đo nồng độ khí.
❖ Tính năng điều khiển, giám sát
- Để theo dõi, kiểm tra, giám sát và ra lệnh điều khiển cho hệ thống, mỗi tủ
lưu trữ sẽ được trang bị màn hình hiển thị kết nối với hệ thống điều khiển.
- Để lưu trữ toàn bộ cơ sở dữ liệu của các tài liệu được số hóa cũng như đưa
ra chuẩn đoán, phân tích, đánh giá các hoạt động và thu thập, giám sát các dữ liệu
của hệ thống, tủ Master sẽ được trang bị máy tính công nghiệp IPC và cũng được
kết nối với hệ thống điều khiển.
- Để tạo được và đảm bảo môi trường lưu trữ tối ưu cho tài liệu ta cần phải
thu thập dữ liệu về môi trường lưu trữ tài liệu (đặc biệt là thông số về nhiệt độ môi
trường, độ ẩm không khí). Do đó, mỗi tủ lưu trữ sẽ được trang bị cảm biến nhiệt
độ, độ ẩm.
❖ Tính năng bảo mật
- Để tăng tính bảo mật cho tài liệu và dữ liệu trong hệ thống cũng như để có
thể ra lệnh điều khiển hệ thống, người dùng phải thực hiện đăng nhập vào hệ thống
theo tài khoản và mật khẩu được cấp.
- Tài khoản và mật khẩu của người dùng cũng được phân cấp theo mức độ
truy cập vào hệ thống. Theo đó, người dùng chỉ có thể sử dụng những tính năng
mà tài khoản đó được cấp quyền truy cập.
- Ngoài ra, để tăng khả năng truy cập, hệ thống sẽ được trang cảm biến vân
tay, và người dùng có thể đăng nhập bằng vân tay để tiết kiệm thời gian. Vân tay
sẽ được thêm vào cùng với tài khoản của người dùng.
7
❖ Tính năng tìm kiếm tài liệu
- Hệ thống sẽ cung cấp một cơ sở dữ liệu để người quản lý thiết lập các
thông số của tài liệu (tên, vị trí trong khoang giá, số lượng...) qua đó kết hợp với
phần mềm trên máy tính, người sử dụng chỉ cần truy xuất thông tin bằng mã hoặc
tên của tài liệu và sau đó sẽ được hệ thống tự động cung cấp vị trí của tài liệu trong
khu vực lưu trữ.
- Người dùng sau khi đăng nhập vào hệ thống có thể thực hiện tìm kiếm tài
liệu tại bất kỳ tủ lưu trữ nào trong hệ thống.
- Ngoài ra, để tăng tính đa dụng cho hệ thống, người dùng có thể tìm kiếm
tài liệu thông qua máy tính để bàn hoặc Smartphone.
❖ Tính năng phụ trợ
- Tính năng cảnh báo
✓ Để thông báo cho người dùng về các trạng thái hoạt động của hệ thống, ở
đây hệ thống sẽ được trang bị loa cảnh báo.
✓ Ngoài ra hệ thống cũng sẽ hiển thị nội dung của các cảnh báo trên màn
hình hiển thị để cho người dùng tiện theo dõi.
- Tính năng chiếu sáng
✓ Mỗi tủ lưu trữ được trang bị hệ thống đèn chiếu sáng với tính năng chiếu
sáng tự động mỗi khi tủ lưu trữ được mở và sẽ tự động tắt khi tủ đóng lại (được
điều khiển bởi phần mềm).
- Tính năng hiển thị vị trí của tủ
✓ Để giúp người dùng dễ dàng xác định vị trí chính xác của mỗi tủ lưu trữ
trong hệ thống khi tìm kiếm tài liệu và vận hành hệ thống, tại mỗi tủ lưu trữ sẽ
được trang bị led 7 thanh hiển thị số thứ tự của tủ.
Như vậy, sau khi phân tích và xây dựng các tính năng cho hệ thống lưu trữ
thông minh đảm bảo đáp ứng các tiêu chí đặt ra, phần tiếp theo sẽ tập trung đi vào
thiết kế, xây dựng cấu trúc tổng quan cho một hệ thống lưu trữ thông minh hoàn
chỉnh.
1.3.2. Cấu trúc thiết kế cho hệ thống lưu trữ thông minh
Như đã đề cập ở các phần trước, một hệ thống lưu trữ thông minh gồm
nhiều dãy giá (tủ lưu trữ) được đặt sát cạnh nhau nhằm mục đích tối ưu không gian
lưu trữ. Do vậy để phối hợp hoạt động của tất cả các tủ trong hệ thống ta cần xây
dựng một tủ có chức năng điều khiển, giám sát mọi hoạt động của các tủ còn lại.
Và tủ đó được gọi là tủ “Master”. Các tủ còn lại được kết nối với tủ Master và sẽ
được gọi là các tủ “Slave”.
Mỗi hệ thống đều được trang bị cảm biến phát hiện hết hành trình được đặt
tại các tủ ngoài cùng của hệ thống có nhiệm vụ xác định giới hạn khoảng cách tối
8
đa mà hệ thống có thể đạt được. Điều này sẽ giúp đảm bảo hệ thống sẽ không đi
quá khỏi ray trong quá trình di chuyển. Và các tủ ngoài cùng đó sẽ được gọi là tủ
“Outmost Slave”.
Như vậy, một hệ thống lưu trữ thông minh hoàn chỉnh sẽ gồm 3 loại tủ sau:
✓ Tủ Master
✓ Tủ Slave
✓ Tủ Outmost Slave
Trong quá trình hoạt động, các tủ lưu trữ sẽ giao tiếp với nhau và tủ Master
có nhiệm vụ ra lệnh điều khiển trong khi các tủ Slave và Outmost Slave sẽ gửi lệnh
đến Master và nhận lệnh điều khiển từ Master. Để thực hiện được các công việc
thu thập và xử lý dữ liệu, truyền nhận dữ liệu giữa các ngoại vi và giữa các tủ, mỗi
tủ lưu trữ sẽ được trang bị một mạch điều khiển và tôi gọi chúng là “mạch điều
khiển trung tâm”.
Ngoài ra, để tính toán và xác định khoảng cách di chuyển của các tủ lưu trữ
ta cần có một hệ tọa độ gốc đóng vai trò tham chiếu và tôi sẽ đặt hệ tọa độ gốc này
tại tủ Master. Như vậy các tủ Slave và Outmost Slave sẽ được quy về phía Master
và do đó tủ Master phải là tủ cố định. Chính vì vậy, tủ Master là tủ duy nhất trong
hệ thống sẽ không được trang bị động cơ và không được phép chuyển động.
Thêm nữa, để có thể thực hiện chức năng tìm kiếm tài liệu trên hệ thống ta
cần xây dựng một cơ sở dữ liệu lưu trữ thông tin của toàn bộ tài liệu và cơ sở dữ
liệu đó sẽ được đặt tại tủ Master. Do đó tủ Master sẽ được thiết kế đặc biệt hơn các
tủ còn lại.
Sơ đồ thiết kế cho hệ thống lưu trữ thông minh đáp ứng các tính năng đã
xây dựng ở mục 1.3.1 được minh họa trong hình dưới đây:
9
LUẬN VĂN THẠC SĨ
Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống
lưu trữ thông minh
ĐẶNG VĂN KHỞI
[email protected]
Ngành Kỹ thuật điều khiển và tự động hóa
Giảng viên hướng dẫn: PGS.TS. Nguyễn Quang Địch
Viện: Điện
HÀ NỘI, 2020
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống
lưu trữ thông minh
ĐẶNG VĂN KHỞI
[email protected]
Ngành Kỹ thuật điều khiển và tự động hóa
Giảng viên hướng dẫn: PGS.TS. Nguyễn Quang Địch
Chữ ký của GVHD
Viện: Điện
HÀ NỘI, 2020
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ
Họ và tên tác giả luận văn: Đặng Văn Khởi
Đề tài luận văn: Phát triển hệ điều hành thời gian thực trên chip ARM ứng
dụng trong hệ thống lưu trữ thông minh.
Chuyên ngành: Kỹ thuật điều khiển và tự động hóa
Mã số HV: CB180120
Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác nhận
tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày
30/10/2020 với các nội dung sau:
Chương 2: - Sửa lại câu từ bất hợp lý trong luận văn.
Chương 3: - Loại bỏ những phần trình bày lan man.
Chương 4: - Sửa lại các lưu đồ thuật toán chưa chính xác.
- Làm rõ ý nghĩa, nhiệm vụ của các task.
Ngày 11 tháng 11 năm 2020
Giáo viên hướng dẫn Tác giả luận văn
PGS.TS. Nguyễn Quang Địch Đặng Văn Khởi
CHỦ TỊCH HỘI ĐỒNG
PGS.TS. Nguyễn Phạm Thục Anh
LỜI CẢM ƠN
Trong quá trình thực hiện luận văn “Phát triển hệ điều hành thời gian thực
trên chip ARM ứng dụng trong hệ thống lưu trữ thông minh” tôi đã nhận được sự
giúp đỡ tận tình của thầy hướng dẫn cùng tập thể cán bộ đang làm việc tại Viện
Kỹ thuật điều khiển và tự động hóa, Đại học Bách Khoa Hà Nội. Viện không chỉ
tạo điều kiện trong việc hỗ trợ các trang thiết bị, vật tư cần thiết đáp ứng định
hướng phát triển mà luận văn hướng tới mà còn tạo ra môi trường học tập, nghiên
cứu sôi nổi, hiệu quả và chuyên nghiệp. Chính những yếu tố đó đã góp phần không
nhỏ để tôi có thể hoàn thành luận văn của mình.
Qua đây, tôi cũng xin gửi lời cám ơn đến Thầy hướng dẫn là PGS.TS.
Nguyễn Quang Địch – Giám đốc viện Kỹ thuật điều khiển và tự động hóa, cùng
tất cả cán bộ đang làm việc tại Viện. Là một cán bộ của Viện, tôi cảm thấy rất tự
hào khi được làm việc cùng với một tập thể đoàn kết và có kiến thức chuyên môn
cao.
Hà Nội, ngày 11 tháng 11 năm 2020
Tác giả
Đặng Văn Khởi
MỤC LỤC
DANH MỤC HÌNH VẼ .......................................................................................... I
DANH MỤC BẢNG BIỂU ................................................................................. III
DANH MỤC TỪ VIẾT TẮT ............................................................................... IV
LỜI NÓI ĐẦU ....................................................................................................... 1
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG LƯU TRỮ THÔNG MINH......... 2
1.1. ĐẶT VẤN ĐỀ................................................................................................. 2
1.2. TỔNG QUAN VỀ HỆ THỐNG LƯU TRỮ TÀI LIỆU ............................................. 2
1.2.1. Tổng quan về hệ thống lưu trữ tài liệu truyền thống ........................... 2
1.2.2. Tổng quan về hệ thống lưu trữ tài liệu thông minh ............................. 3
1.2.3. Đánh giá ............................................................................................... 4
1.3. TỔNG QUAN CẤU TRÚC XÂY DỰNG HỆ THỐNG LƯU TRỮ THÔNG MINH ........ 6
1.3.1. Tổng quan các tính năng trong hệ thống lưu trữ thông minh .............. 6
1.3.2. Cấu trúc thiết kế cho hệ thống lưu trữ thông minh .............................. 8
1.4. TỔNG KẾT CHƯƠNG 1 ................................................................................ 11
CHƯƠNG 2. CƠ SỞ VÀ CẤU TRÚC THIẾT KẾ PHẦN CỨNG .................... 12
2.1. ĐẶT VẤN ĐỀ............................................................................................... 12
2.2. CƠ SỞ THIẾT KẾ MẠCH PHẦN CỨNG ........................................................... 12
2.3. THIẾT KẾ PHẦN CỨNG CHO HỆ THỐNG LƯU TRỮ THÔNG MINH .................. 13
2.3.1. Thiết kế mạch đếm người thu ............................................................ 13
2.3.2. Thiết kế mạch điều khiển động cơ ..................................................... 14
2.3.3. Thiết kế mạch điều khiển trung tâm .................................................. 17
2.4. TỔNG KẾT CHƯƠNG 2 ................................................................................ 23
CHƯƠNG 3. XÂY DỰNG MÔI TRƯỜNG NHÚNG HỆ ĐIỀU HÀNH THỜI
GIAN THỰC TRÊN CHIP ARM ............................................................... 24
3.1. PHÂN TÍCH VÀ LỰA CHỌN HƯỚNG TIẾP CẬN .............................................. 24
3.1.1. Phương pháp lập trình nhúng ............................................................ 24
3.2. CƠ SỞ PHÁT TRIỂN HỆ ĐIỀU HÀNH THỜI GIAN THỰC RTOS ....................... 28
3.2.1. Phân loại RTOS ................................................................................. 28
3.2.2. Cơ sở lựa chọn Open Source RTOS phù hợp với chip ARM ........... 29
3.3. XÂY DỰNG MÔI TRƯỜNG NHÚNG ............................................................... 34
3.3.1. Định hướng môi trường phát triển code nhúng ................................. 34
3.3.2. Xây dựng môi trường nhúng trên chip ARM .................................... 39
3.4. TỔNG KẾT CHƯƠNG 3 ................................................................................ 40
CHƯƠNG 4. PHÁT TRIỂN THUẬT TOÁN TRÊN NỀN TẢNG HỆ ĐIỀU
HÀNH THỜI GIAN THỰC CHO HỆ THỐNG LƯU TRỮ THÔNG MINH
...................................................................................................................... 41
4.1. PHƯƠNG PHÁP TIẾP CẬN ............................................................................ 41
4.2. CƠ SỞ XÂY DỰNG THUẬT TOÁN CHO CÁC TASK ........................................ 42
4.2.1. Cấu trúc thiết kế nhúng trên mạch điều khiển trung tâm của tủ Slave
……………………………………………………………………………..42
4.2.2. Cở sở phát triển thuật toán trên mạch điều khiển trung tâm tủ Slave 44
4.3. XÂY DỰNG, PHÁT TRIỂN THUẬT TOÁN CHO CÁC TASK .............................. 46
4.3.1. Xây dựng các task cho mạch điều khiển trung tâm tủ Slave............. 46
4.3.2. Xây dựng frame truyền nhận dữ liệu giữa các task với ngoại vi ...... 48
4.3.3. Phát triển thuật toán cho các task ...................................................... 50
4.4. TỔNG KẾT CHƯƠNG 4 ................................................................................ 73
CHƯƠNG 5. KẾT QUẢ ĐẠT ĐƯỢC .................................................................74
5.1. PHẦN CỨNG ............................................................................................... 74
5.2. PHẦN MỀM................................................................................................. 77
5.3. TỔNG KẾT CHƯƠNG 5 ................................................................................ 79
KẾT LUẬN ...........................................................................................................80
TÀI LIỆU THAM KHẢO .................................................................................... 81
PHỤ LỤC..............................................................................................................83
DANH MỤC HÌNH VẼ
Hình 1.1 Hình ảnh tủ lưu trữ tài liệu truyền thống................................................. 2
Hình 1.2 Hình ảnh hệ thống lưu trữ tài liệu thông minh ........................................ 3
Hình 1.3 Sơ đồ cấu trúc hệ thống lưu trữ thông minh ......................................... 10
Hình 2.1 Sơ đồ kết nối các mảng mạch tại tủ Slave và Outmost Slave ............... 13
Hình 2.2 Sơ đồ nguyên lý mạch đếm người thu .................................................. 14
Hình 2.3 Động cơ BLDC 120W có hộp số và Driver động cơ ............................ 15
Hình 2.4 Sơ đồ nguyên lý mạch điều khiển động cơ BLDC ............................... 16
Hình 2.5 Nguồn cấp cho toàn bộ mạch điều khiển trung tâm.............................. 19
Hình 2.6 Sơ đồ nguyên lý thiết kế chip ARM, truyền thông CAN, RS485 2 dây 20
Hình 2.7 Sơ đồ nguyên lý kết nối với các ngoại vi (1) ........................................ 21
Hình 2.8 Sơ đồ nguyên lý kết nối với các ngoại vi (2) ........................................ 22
Hình 3.1 Pseudo code của siêu vòng lặp (Super-loop) ........................................ 25
Hình 3.2 Thành phần của RTOS .......................................................................... 26
Hình 3.3 Kiến trúc hệ điều hành thời gian thực FreeRTOS................................. 29
Hình 3.4 Kiến trúc hệ điều hành ChibiOS/RT ..................................................... 31
Hình 3.5 Kiến trúc hệ điều hành thời gian thực TinyOS ..................................... 32
Hình 3.6 Phát triển code nhúng trên chip ARM sử dụng IDE ............................. 35
Hình 3.7 Hệ điều hành Ubuntu ............................................................................ 36
Hình 3.8 Phát triển code nhúng trên chip ARM không dùng IDE ....................... 37
Hình 4.1 Sơ đồ nhúng hệ điều hành FreeRTOS trên chip ARM (Nguồn Hình 3.11)
.............................................................................................................................. 43
Hình 4.2 Phát triển các Task trên FreeRTOS....................................................... 45
Hình 4.3 Xây dựng các task thực hiện trong Timer Service Task ....................... 45
Hình 4.4 Kỹ thuật “Deferred Interrupt Processing” trong xử lý tín hiệu ngắt ..... 46
Hình 4.5 Mô hình các task được xây dựng cho chip ARM tại tủ Slave .............. 47
Hình 4.6 Lưu đồ thuật toán frame giao tiếp với mạch điều khiển động cơ ......... 52
Hình 4.7 Lưu đồ thuật toán phát triển task "Xử lý truyền thông Modbus RTU" 53
Hình 4.8 Lưu đồ thuật toán phát triển task "Đọc nhiệt độ, độ ẩm trong" ............ 54
Hình 4.9 Lưu đồ thuật toán xử lý "Sự kiện cháy trong" ...................................... 55
Hình 4.10 Lưu đồ thuật toán xử lý "Sự kiện CAN" ............................................. 55
i
Hình 4.11 Lưu đồ thuật toán xử lý "Sự kiện USART1" ...................................... 56
Hình 4.12 Lưu đồ thuật toán xử lý "Sự kiện USART2" ...................................... 57
Hình 4.13 Lưu đồ thuật toán xử lý "Sự kiện tài liệu nhô" ................................... 58
Hình 4.14 Lưu đồ thuật toán phát triển task "Xử lý truyền thông CAN" ............ 60
Hình 4.15 Lưu đồ thuật toán phát triển task "Dừng khẩn cấp"............................ 61
Hình 4.16 Lưu đồ thuật toán phát triển task "Xử lý tình huống cháy trong" ...... 62
Hình 4.17 Lưu đồ thuật toán phát triển task "Xử lý tình huống cháy ngoài" ...... 63
Hình 4.18 Lưu đồ thuật toán phát triển task "Đăng nhập hệ thống".................... 63
Hình 4.19 Lưu đồ thuật toán phát triển task "Đăng xuất hệ thống" .................... 64
Hình 4.20 Lưu đồ thuật toán phát triển task "Thông gió hệ thống" .................... 65
Hình 4.21 Lưu đồ thuật toán phát triển task "Thông gió hệ thống" (tiếp) ........... 66
Hình 4.22 Lưu đồ thuật toán phát triển task "Điều khiển tủ ra xa Master" ......... 67
Hình 4.23 Lưu đồ thuật toán phát triển task "Điều khiển tủ lại gần Master" ...... 68
Hình 4.24 Lưu đồ thuật toán task "Đọc dữ liệu từ mạch đếm người thu" ........... 69
Hình 4.25 Lưu đồ thuật toán phát triển task "Tắt hiển thị mọi cảnh báo" ........... 70
Hình 4.26 Lưu đồ thuật toán phát triển task "Hiển thị số người trong tủ" .......... 70
Hình 4.27 Lưu đồ thuật toán phát triển task "Hiển thị khoảng cách giữa 2 tủ"... 71
Hình 4.28 Lưu đồ thuật toán phát triển task "Hiển thị nhiệt độ, độ ẩm trong" ... 72
Hình 4.29 Lưu đồ thuật toán phát triển task "Hiển thị nhiệt độ, độ ẩm ngoài" ... 72
Hình 4.30 Lưu đồ thuật toán phát triển task "Idle task" ...................................... 73
Hình 5.1 Hình ảnh mạch điều khiển trung tâm tại tủ Slave ................................. 74
Hình 5.2 Các ngoại vi tại tủ Slave ....................................................................... 75
Hình 5.3 Giao diện đăng nhập hệ thống .............................................................. 76
Hình 5.4 Giao diện màn hình điều khiển ............................................................. 76
Hình 5.5 Sơ đồ hình cây phát triển mã nguồn chip ARM cho tủ Slave .............. 77
Hình 5.6 Tạo môi trường debug chip trên OpenOCD ......................................... 78
Hình 5.7 Nhúng mã nguồn (.elf extension) vào GDB Server phục vụ debug code
.............................................................................................................................. 79
ii
DANH MỤC BẢNG BIỂU
Bảng 1.1 Bảng so sánh hệ thống lưu trữ truyền thống với hệ thống lưu trữ thông
minh ........................................................................................................................ 4
Bảng 3.1 Bảng so sánh Open Source RTOS và Licensed RTOS ........................ 28
Bảng 3.2 Bảng so sánh các hệ điều hành thời gian thực ...................................... 33
Bảng 3.3 Bảng so sánh phát triển code nhúng dùng IDE và không dùng IDE .... 37
Bảng 4.1 Ký hiệu các quy ước về các biến khoảng cách ..................................... 51
Bảng 4.2 Các trường hợp của tủ khi thực hiện task "Thông gió hệ thống" ......... 64
Bảng 4.3 Các trường hợp của tủ khi thực hiện task "Đk xa Master" ................... 66
iii
DANH MỤC TỪ VIẾT TẮT
Viết tắt Ghi chú Tiếng Anh Ý nghĩa
ADC Analog to Digital Convert Bộ chuyển đổi tương tự sang số
Application Programming
API Giao diện lập trình ứng dụng
Interface
ARM Application – Real-time –
Microcontroller
BLDC Brushless Direct Current Một chiều không chổi than
CAN Controller Area Network
CPU Central Processing Unit Bộ xử lý trung tâm
CRC Cyclic Redundancy Check Mã check lỗi dữ liệu
Bộ chuyển đổi điện áp 1 chiều
DC/DC Direct Current/ Direct Current
sang 1 một chiều
DSP Digital Signal Processor Bộ xử lý tín hiệu số
GCC GNU Compiler Collection Trình biên dịch
GNU GNU’s Not Unix
GDB GNU Debugger Trình gỡ lỗi
GUI Graphic User Interface Giao diện đồ họa người dùng
HAL Hardware Abstraction Layer Lớp phần cứng trừu tượng
HMI Human-Machine Interface Màn hình công nghiệp
Giao thức truyền tin nối tiếp đồng
I2C Inter-Integrated Circuit
bộ
IC Integrated Circuit Chip
IoT Internet of Things Kết nối vạn vật
IPC Industrial Pannel PC Máy tính công nghiệp
ISR Interrupt Service Routine Dịch vụ ngắt
MCU Micro-Controller Unit Vi điều khiển
MPU Micro-Processor Unit Vi xử lý
MPU Memory Protection Unit Đơn vị bảo vệ bộ nhớ
Ngôn ngữ C cho hệ thống mạng
nesC Network Embedded System C
nhúng
iv
OpenOCD Open on Chip Debugger Trình gỡ lỗi trên chip
OS Operating System Hệ điều hành
PC Personal Computer Máy tính cá nhân
RAM Random Access Memory
ROM Read Only Memory
PWM Pulse Width Modulation Điều chế độ rộng xung
RTOS Real-time Operating System Hệ điều hành thời gian thực
SPI Serial Peripheral Interface Giao tiếp ngoại vi nối tiếp
TCL Tickle Programming language Ngôn ngữ lập trình bậc cao
TCP/IP Internet Protocol Suite Giao thức truyền thông liên mạng
Universal Asynchronous Truyền nhận nối tiếp không đồng
UART
Receiver Transmitter bộ
UDP User Datagram Protocol Giao thức dữ liệu người dùng
USB Universal Serial Bus Bus nối tiếp kết nối ngoại vi
v
LỜI NÓI ĐẦU
1. Lý do chọn đề tài
Xuất phát từ nhu cầu thực tiễn, yêu cầu tất yếu của cuộc cách mạng 4.0, lưu
trữ tài liệu, văn bản ngày càng được các doanh nghiệp, công ty, nhà nước,… chú
trọng quan tâm, đặc biệt là khi số lượng tài liệu cần lưu trữ cực kỳ lớn. Điều này
dẫn tới nhu cầu tất yếu về một hệ thống thông minh có khả năng lưu trữ, bảo quản
và truy xuất tài liệu hoạt động chính xác, ổn định, đáp ứng “real-time”. Chính vì
vậy, việc xây dựng, phát triển hệ thống lưu trữ thông minh thành một hệ thống
nhúng thời gian thực là một bước đi phù hợp với xu thế hiện nay.
2. Mục tiêu và phạm vi nghiên cứu
Mục tiêu của luận văn là phát triển mã nguồn trên nền tảng hệ điều hành
thời gian thực đáp ứng các yêu cầu công nghệ của một sản phẩm thương mại xây
dựng trên cơ sở một hệ thống nhúng.
Phạm vi nghiên cứu của đề tài gói gọn trong những điểm sau:
- Nghiên cứu yêu cầu công nghệ cho hệ thống lưu trữ thông minh.
- Nghiên cứu hệ thống nhúng.
- Nghiên cứu hệ điều hành thời gian thực.
- Nghiên cứu các phương pháp lập trình, xây dựng mã nguồn.
- Nghiên cứu dòng chip ARM, tiếp cận định hướng lập trình cấp độ
thanh ghi (hạn chế việc sử dụng API có sẵn).
- Nghiên cứu tổ chức, xây dựng, phân vùng bộ nhớ trên chip.
3. Tóm tắt nội dung luận văn
Nội dung của luận văn “Phát triển hệ điều hành thời gian thực trên chip
ARM ứng dụng trong hệ thống lưu trữ thông minh” được trình bày chi tiết trong 5
chương:
- Chương 1: Tổng quan về hệ thống lưu trữ thông minh.
- Chương 2: Cơ sở và cấu trúc thiết kế phần cứng.
- Chương 3: Xây dựng môi trường nhúng hệ điều hành thời gian thực trên
chip ARM.
- Chương 4: Phát triển thuật toán trên nền tảng hệ điều hành thời gian thực
cho hệ thống lưu trữ thông minh.
- Chương 5: Kết quả đạt được.
1
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG LƯU
TRỮ THÔNG MINH
1.1. Đặt vấn đề
Bảo quản tài liệu lưu trữ là quá trình áp dụng các biện pháp khoa học, kỹ
thuật nhằm kéo dài tuổi thọ và bảo đảm an toàn cho tài liệu lưu trữ [1]. Công việc
bảo quản tài liệu lưu trữ bao gồm: xây dựng, cải tạo kho lưu trữ; trang thiết bị kỹ
thuật bảo quản; xử lý kỹ thuật bảo quản; tổ chức tài liệu trong kho lưu trữ; tu bổ
và phục chế tài liệu lưu trữ. Việc xử lý kỹ thuật bảo quản được thực hiện bao gồm
các biện pháp kỹ thuật chống hoặc hạn chế những ảnh hưởng của khí hậu, môi
trường, công trùng và các tác nhân khác. Những công việc phổ thông nhất trong
xử lý kỹ thuật là xử lý nhiệt độ, độ ẩm với các thiết bị chuyên dụng, khử trùng,
khử axit để hạn chế hư hại tài liệu. Do vậy việc xây dựng, phát triển hệ thống lưu
trữ tài liệu cần đáp ứng được các tiêu chuẩn chất lượng đặc biệt là tạo ra được môi
trường lưu trữ tối ưu để bảo quản tài liệu.
1.2. Tổng quan về hệ thống lưu trữ tài liệu
1.2.1. Tổng quan về hệ thống lưu trữ tài liệu truyền thống
Hệ thống lưu trữ tài liệu truyền thống được chỉ ra trong Hình 1.1:
Hình 1.1 Hình ảnh tủ lưu trữ tài liệu truyền thống
Hệ thống có cấu trúc cơ khí đơn giản gồm các tủ lưu trữ được đặt cố định
và cách nhau một khoảng không đủ rộng để cho người dùng có thể lấy tài liệu được
đặt trong các khoang tủ. Điều này sẽ làm tăng đáng kể diện tích phòng lưu trữ.
Ngoài ra, hệ thống không được trang bị thêm bất kỳ hệ thống điều khiển, giám sát
2
nào. Môi trường lưu trữ tài liệu trong các tủ lưu trữ phụ thuộc hoàn toàn vào môi
trường của phòng lưu trữ và hệ thống không có khả năng phản hồi thông tin, dữ
liệu về môi trường lưu trữ. Điều này sẽ khó đảm bảo được môi trường lưu trữ cho
tài liệu là tối ưu.
Công việc tìm kiếm trên hệ thống lưu trữ tài liệu truyền thống được thực
hiện một cách khá thủ công. Theo đó, người dùng sẽ tìm kiếm tài liệu thông qua
các bảng chỉ dẫn về khu vực lưu trữ nhóm các tài liệu có cùng một thuộc tính nào
đó được dán ở mặt ngoài của mỗi tủ. Thuộc tính để nhóm các tài liệu thường được
sử dụng đó là sắp xếp theo bảng chữ cái, theo chủ đề hoặc theo mã số được mã hóa
cho tài liệu,…
1.2.2. Tổng quan về hệ thống lưu trữ tài liệu thông minh
Hệ thống lưu trữ tài liệu thông minh được chỉ ra trong Hình 1.2:
Hình 1.2 Hình ảnh hệ thống lưu trữ tài liệu thông minh
Hệ thống có cấu trúc cơ khí gồm nhiều tủ lưu trữ được đặt sát cạnh nhau có
khả năng di chuyển nhờ hệ thống truyền động động cơ – bánh răng – dây xích –
ray dẫn hướng được thiết kế dưới chân tủ và nền nhà của phòng lưu trữ. Điều này
sẽ giúp tiết kiệm tối đa không gian lưu trữ bởi người dùng đơn giản là lấy tài liệu
bằng cách kích mở tủ lưu trữ có chứa tài liệu đó. Khi ấy hệ thống sẽ tạo ra 1 lối đi
đủ rộng tại tủ có chứa tài liệu người dùng cần (trong khi các tủ còn lại vẫn nằm sát
cạnh nhau).
Bên cạnh đó, hệ thống còn được trang bị hệ thống giám sát, điều khiển có
nhiệm vụ thu thập dữ liệu về điều kiện của môi trường lưu trữ. Từ đó tự động phân
tích dữ liệu và đưa ra tín hiệu điều khiển phù hợp. Hệ thống có khả năng tương tác
với người dùng (tức người dùng có thể ra lệnh điều khiển cho hệ thống) từ việc
3
thiết lập thông số, thiết lập bảo mật đến việc tìm kiếm tài liệu thông qua màn hình
hiển thị được đặt tại mỗi tủ trong hệ thống.
Công việc tìm kiếm tài liệu cũng trở nên đơn giản hơn nhiều so với hệ thống
lưu trữ truyền thống. Người dùng chỉ việc nhập tên hoặc mã của tài liệu cần tìm
kiếm tại bất kỳ màn hình hiển thị được đặt tại bất kỳ tủ nào. Sau đó hệ thống sẽ tự
động phân tích dữ liệu người dùng nhập vào với cơ sở dữ liệu của hệ thống. Nếu
tài liệu mà người dùng cần tìm kiếm được lưu trữ trong hệ thống, khi đó hệ thống
sẽ thông báo cho người dùng biết vị trí của tài liệu đang nằm ở đâu đồng thời kích
mở khoang giá đang chứa tài liệu đó.
Ngoài ra, hệ thống lưu trữ thông minh có thể được trang bị thêm tính năng
bảo mật giúp ngăn chặn truy cập từ bên ngoài. Khi đó người dùng cần phải đăng
nhập vào hệ thống thông qua màn hình hiển thị để có thể vận hành, điều khiển,
thiết lập các thông số, tìm kiếm tài liệu,….
1.2.3. Đánh giá
Sau khi tìm hiểu khái quát về 2 hệ thống lưu trữ truyền thống và thông minh,
ta rút ra được bảng so sánh sau:
Bảng 1.1 Bảng so sánh hệ thống lưu trữ truyền thống với hệ thống lưu trữ thông minh
Hệ thống lưu trữ truyền Hệ thống lưu trữ thông
Tiêu chí đánh giá
thống minh
Giải pháp tối ưu cho tiết
Diện tích Cần nhiều không gian lưu trữ.
kiệm không gian lưu trữ.
Kết cấu phức tạp do có thêm
phần điều khiển. Ngoài ra
kết cấu cơ khí cũng phức tạp
Kết cấu Kết cấu cơ khí đơn giản. hơn khi được trang bị thêm
cơ cấu truyền động động cơ
– bánh răng – dây xích, ray
dẫn hướng.
Không có hệ thống đánh giá, Được trang bị hệ thống cảm
thu thập dữ liệu về môi biến nhiệt độ, độ ẩm, hệ
Bảo quản tài liệu trường lưu trữ tài liệu => thống giám sát cho phép
không bảo đảm điều kiện lưu theo dõi điều kiện môi
trữ tối ưu. trường lưu trữ => kiểm soát
và đưa ra giải pháp lưu trữ
tối ưu cho tài liệu.
4
Tài liệu được đánh số một Tài liệu được số hóa trước
cách thủ công, phải tuân thủ khi được sắp xếp lên các giá,
theo 1 quy tắc sắp xếp nhất người dùng tìm kiếm tài liệu
định và được lưu trữ thông qua màn hình hiển thị bằng
Tìm kiếm tài liệu
qua sổ sách hoặc dữ liệu số tên hoặc mã của tài liệu, sau
trên máy tính => tra cứu và đó hệ thống sẽ tiến hành tìm
tìm kiếm tài liệu khó khăn. kiếm trong cơ sở dữ liệu và
thông báo cho người dùng
biết vị trí của tài liệu cần tìm
đồng thời mở khoang giá có
chứa tài liệu đó.
Tài liệu gần như không có Người dùng bắt buộc phải
bảo mật, người dùng có thể đăng nhập vào hệ thống
sử dụng tài liệu tùy ý, bảo mật bằng tên tài khoản và mật
khả quan nhất cho tài liệu khẩu được cung cấp để có
trong hệ thống lưu trữ truyền thể vận hành, điều khiển hệ
Bảo mật tài liệu
thống là mỗi tài liệu được gắn thống cũng như tìm kiếm tài
một chip từ và hệ thống sẽ liệu. Các tài khoản cũng
báo động trong trường hợp được phân cấp quyền truy
người dùng chưa làm thủ tục cập vào các tính năng của hệ
gỡ từ cho tài liệu. thống => Tăng tính bảo mật
cho tài liệu và hệ thống.
Khả năng quản Rất khó để quản lý khi số Tài liệu được số hóa và hệ
lượng tài liệu lưu trữ lớn. thống hóa cho phép lưu trữ
lý
tài liệu với số lượng lớn.
Cung cấp khả năng mở rộng
Khả năng mở Khó mở rộng. thành nhiều chuỗi hệ thống
rộng lưu trữ dùng chung một cơ
sở dữ liệu.
Cao hơn đáng kể so với hệ
Giá thành Rẻ
thống lưu trữ truyền thống.
Như vậy, qua bảng so sánh ở trên ta dễ dàng nhận thấy ưu điểm vượt trội
của hệ thống lưu trữ thông minh so với hệ thống lưu trữ truyền thống. Tuy có giá
thành cao hơn đáng kể so với hệ thống lưu trữ truyền thống, nhưng bù lại với những
tính năng vượt trội, hệ thống lưu trữ thông minh đã và đang dần thay thế hệ thống
lưu trữ truyền thống và ngày càng được các doanh nghiệp, cơ quan, tổ chức đưa
5
vào sử dụng. Do đó, việc nghiên cứu, phát triển hệ thống lưu trữ thông minh qua
đó làm chủ công nghệ đang được các doanh nghiệp trong lĩnh vực lưu trữ, chỉnh
lý, tự động hóa quan tâm, chú trọng.
Từ những phân tích đã nêu, trong những phần sau của luận văn, tôi sẽ đi
vào xây dựng và phát triển hệ thống lưu trữ thông minh đáp ứng các tiêu chí, yêu
cầu công nghệ để đảm bảo môi trường lưu trữ tối ưu cho tài liệu.
1.3. Tổng quan cấu trúc xây dựng hệ thống lưu trữ thông minh
1.3.1. Tổng quan các tính năng trong hệ thống lưu trữ thông minh
Hệ thống lưu trữ thông minh được xây dựng gồm nhiều giá (tủ lưu trữ) được
đặt sát cạnh nhau nhằm tối ưu không gian lưu trữ.
Hệ thống lưu trữ thông minh phục vụ cho công tác lưu trữ tài liệu cần đáp
ứng được các tiêu chí sau:
- Hệ thống có khả năng di chuyển, đảm bảo không gian lưu trữ tối ưu.
- Hệ thống có khả năng điều khiển, giám sát, thu thập dữ liệu của môi
trường lưu trữ, đảm đảm điều kiện lưu trữ tối ưu.
- Hệ thống có khả năng vận hành trơn tru, đảm bảo các yếu tố an toàn cho
người dùng.
- Hệ thống có khả năng tìm kiếm tài liệu ngay tại hệ thống, hoặc thông qua
PC và smartphone.
- Hệ thống có khả năng bảo mật tài liệu
- Hệ thống có khả năng theo dõi, chuẩn đoán các thiết bị, cảm biến phục
vụ công tác bảo trì, bảo dưỡng hệ thống.
- Hệ thống có khả năng tự động theo dõi và đưa ra các cảnh báo cho người
dùng khi có sự cố xảy ra.
Để đáp ứng được các tiêu chí, yêu cầu trên, các tính năng được xây dựng
trong hệ thống lưu trữ thông minh gồm có:
❖ Tính năng truyền động
- Để hệ thống có thể di chuyển được, mỗi tủ lưu trữ được trang bị một
động cơ truyền động (riêng tủ Master sẽ không có động cơ). Vấn đề đặt ra đó là
phối hợp hoạt động của toàn bộ hệ thống để tránh va chạm trong quá trình các tủ
lưu trữ di chuyển.
❖ Tính năng bảo vệ an toàn
- Bảo vệ an toàn cho người sử dụng:
✓ Hệ thống sẽ được trang bị các bộ cảm biến đếm người để kiểm soát người
ra vào tủ lưu trữ cũng như đảm bảo an toàn cho người sử dụng khi lấy tài liệu bên
trong các khoang giá.
6
- Bảo vệ an toàn cho hệ thống trong quá trình làm việc:
✓ Để tránh trường hợp các tủ va chạm khi kết thúc hành trình, mỗi tủ sẽ được
trang bị các bộ cảm biến tiệm cận (tủ Master không cần trang bị).
✓ Để phát hiện tài liệu lưu trữ bị nhô ra ngoài gây mất an toàn trong quá trình
hệ thống hoạt động, tại mỗi tủ lưu trữ sẽ được trang bị bộ cảm biến thu - phát hồng
ngoại được đặt dọc theo tủ (riêng tủ Master không cần trang bị).
✓ Do mỗi tủ trong hệ thống đều được trang bị khóa cơ với tác dụng giữ tủ
lưu trữ ở vị trí cố định. Điều này sẽ gây ra mất an toàn trong trường hợp hệ thống
điều khiển ra lệnh di chuyển tại tủ đang bị khóa cơ. Để giải quyết vấn đề này, mỗi
tủ lưu trữ sẽ được trang bị cảm biến phát hiện khóa cơ.
✓ Mỗi hệ thống đều được giới hạn làm việc trong không gian lưu trữ nhất
định. Do vậy, tại các tủ ngoài cùng của hệ thống sẽ được trang bị thêm cảm biến
phát hiện hết hành trình nhằm đảm bảo hệ thống không đi quá hành trình bởi một
nguyên nhân bất thường nào đó.
✓ Để phát hiện các tác nhân có thể gây ra cháy, gây tổn hại cho hệ thống,
mỗi tủ lưu trữ sẽ được trang bị cảm biến đo nồng độ khí.
❖ Tính năng điều khiển, giám sát
- Để theo dõi, kiểm tra, giám sát và ra lệnh điều khiển cho hệ thống, mỗi tủ
lưu trữ sẽ được trang bị màn hình hiển thị kết nối với hệ thống điều khiển.
- Để lưu trữ toàn bộ cơ sở dữ liệu của các tài liệu được số hóa cũng như đưa
ra chuẩn đoán, phân tích, đánh giá các hoạt động và thu thập, giám sát các dữ liệu
của hệ thống, tủ Master sẽ được trang bị máy tính công nghiệp IPC và cũng được
kết nối với hệ thống điều khiển.
- Để tạo được và đảm bảo môi trường lưu trữ tối ưu cho tài liệu ta cần phải
thu thập dữ liệu về môi trường lưu trữ tài liệu (đặc biệt là thông số về nhiệt độ môi
trường, độ ẩm không khí). Do đó, mỗi tủ lưu trữ sẽ được trang bị cảm biến nhiệt
độ, độ ẩm.
❖ Tính năng bảo mật
- Để tăng tính bảo mật cho tài liệu và dữ liệu trong hệ thống cũng như để có
thể ra lệnh điều khiển hệ thống, người dùng phải thực hiện đăng nhập vào hệ thống
theo tài khoản và mật khẩu được cấp.
- Tài khoản và mật khẩu của người dùng cũng được phân cấp theo mức độ
truy cập vào hệ thống. Theo đó, người dùng chỉ có thể sử dụng những tính năng
mà tài khoản đó được cấp quyền truy cập.
- Ngoài ra, để tăng khả năng truy cập, hệ thống sẽ được trang cảm biến vân
tay, và người dùng có thể đăng nhập bằng vân tay để tiết kiệm thời gian. Vân tay
sẽ được thêm vào cùng với tài khoản của người dùng.
7
❖ Tính năng tìm kiếm tài liệu
- Hệ thống sẽ cung cấp một cơ sở dữ liệu để người quản lý thiết lập các
thông số của tài liệu (tên, vị trí trong khoang giá, số lượng...) qua đó kết hợp với
phần mềm trên máy tính, người sử dụng chỉ cần truy xuất thông tin bằng mã hoặc
tên của tài liệu và sau đó sẽ được hệ thống tự động cung cấp vị trí của tài liệu trong
khu vực lưu trữ.
- Người dùng sau khi đăng nhập vào hệ thống có thể thực hiện tìm kiếm tài
liệu tại bất kỳ tủ lưu trữ nào trong hệ thống.
- Ngoài ra, để tăng tính đa dụng cho hệ thống, người dùng có thể tìm kiếm
tài liệu thông qua máy tính để bàn hoặc Smartphone.
❖ Tính năng phụ trợ
- Tính năng cảnh báo
✓ Để thông báo cho người dùng về các trạng thái hoạt động của hệ thống, ở
đây hệ thống sẽ được trang bị loa cảnh báo.
✓ Ngoài ra hệ thống cũng sẽ hiển thị nội dung của các cảnh báo trên màn
hình hiển thị để cho người dùng tiện theo dõi.
- Tính năng chiếu sáng
✓ Mỗi tủ lưu trữ được trang bị hệ thống đèn chiếu sáng với tính năng chiếu
sáng tự động mỗi khi tủ lưu trữ được mở và sẽ tự động tắt khi tủ đóng lại (được
điều khiển bởi phần mềm).
- Tính năng hiển thị vị trí của tủ
✓ Để giúp người dùng dễ dàng xác định vị trí chính xác của mỗi tủ lưu trữ
trong hệ thống khi tìm kiếm tài liệu và vận hành hệ thống, tại mỗi tủ lưu trữ sẽ
được trang bị led 7 thanh hiển thị số thứ tự của tủ.
Như vậy, sau khi phân tích và xây dựng các tính năng cho hệ thống lưu trữ
thông minh đảm bảo đáp ứng các tiêu chí đặt ra, phần tiếp theo sẽ tập trung đi vào
thiết kế, xây dựng cấu trúc tổng quan cho một hệ thống lưu trữ thông minh hoàn
chỉnh.
1.3.2. Cấu trúc thiết kế cho hệ thống lưu trữ thông minh
Như đã đề cập ở các phần trước, một hệ thống lưu trữ thông minh gồm
nhiều dãy giá (tủ lưu trữ) được đặt sát cạnh nhau nhằm mục đích tối ưu không gian
lưu trữ. Do vậy để phối hợp hoạt động của tất cả các tủ trong hệ thống ta cần xây
dựng một tủ có chức năng điều khiển, giám sát mọi hoạt động của các tủ còn lại.
Và tủ đó được gọi là tủ “Master”. Các tủ còn lại được kết nối với tủ Master và sẽ
được gọi là các tủ “Slave”.
Mỗi hệ thống đều được trang bị cảm biến phát hiện hết hành trình được đặt
tại các tủ ngoài cùng của hệ thống có nhiệm vụ xác định giới hạn khoảng cách tối
8
đa mà hệ thống có thể đạt được. Điều này sẽ giúp đảm bảo hệ thống sẽ không đi
quá khỏi ray trong quá trình di chuyển. Và các tủ ngoài cùng đó sẽ được gọi là tủ
“Outmost Slave”.
Như vậy, một hệ thống lưu trữ thông minh hoàn chỉnh sẽ gồm 3 loại tủ sau:
✓ Tủ Master
✓ Tủ Slave
✓ Tủ Outmost Slave
Trong quá trình hoạt động, các tủ lưu trữ sẽ giao tiếp với nhau và tủ Master
có nhiệm vụ ra lệnh điều khiển trong khi các tủ Slave và Outmost Slave sẽ gửi lệnh
đến Master và nhận lệnh điều khiển từ Master. Để thực hiện được các công việc
thu thập và xử lý dữ liệu, truyền nhận dữ liệu giữa các ngoại vi và giữa các tủ, mỗi
tủ lưu trữ sẽ được trang bị một mạch điều khiển và tôi gọi chúng là “mạch điều
khiển trung tâm”.
Ngoài ra, để tính toán và xác định khoảng cách di chuyển của các tủ lưu trữ
ta cần có một hệ tọa độ gốc đóng vai trò tham chiếu và tôi sẽ đặt hệ tọa độ gốc này
tại tủ Master. Như vậy các tủ Slave và Outmost Slave sẽ được quy về phía Master
và do đó tủ Master phải là tủ cố định. Chính vì vậy, tủ Master là tủ duy nhất trong
hệ thống sẽ không được trang bị động cơ và không được phép chuyển động.
Thêm nữa, để có thể thực hiện chức năng tìm kiếm tài liệu trên hệ thống ta
cần xây dựng một cơ sở dữ liệu lưu trữ thông tin của toàn bộ tài liệu và cơ sở dữ
liệu đó sẽ được đặt tại tủ Master. Do đó tủ Master sẽ được thiết kế đặc biệt hơn các
tủ còn lại.
Sơ đồ thiết kế cho hệ thống lưu trữ thông minh đáp ứng các tính năng đã
xây dựng ở mục 1.3.1 được minh họa trong hình dưới đây:
9