BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CƠ KHÍ
"#
Luận văn thạc sĩ
ĐIỀU KHIỂN MƠ HÌNH HỆ THỐNG
THEO VẾT ĐỐI TƯỢNG CHUYỂN ĐỘNG
TRONG THỜI GIAN THỰC
Hướng dẫn: TS. Nguyễn Văn Giáp
Học viên:
Lê Ngọc Tuyền
Lớp:
Chế Tạo Máy, K15
Mã số:
00404096
THÀNH PHỐ HỒ CHÍ MINH
2006
Lý lịch trích ngang
Họ và tên: Lê Ngoc Tuyền
Ngày tháng năm sinh: 01/01/1964
Nơi sinh: Quảng Ngãi
Địa chỉ liên lạc: Phòng 416 c/c 657 Nguyễn Kiệm, P. 9, Q. Phú Nhuận Tp HCM
Q TRÌNH ĐÀO TẠO
Đại học
Chế độ học: chính quy
Thời gian học: 1981 – 1986
Nơi học: Đại Học Bách Khoa tp. HCM
Ngành học: Cơ Khí Chế Tạo Máy
Tên luận văn: Thiết Kế Máy Ép Than Tự Động
Cao học
Chế độ học: chính quy
Thời gian học: 2004 – 2006
Nơi học: Đại Học Bách Khoa tp. HCM
Ngành học: Cơ Khí Chế Tạo Máy
Tên luận văn: Điều Khiển Mơ Hình Hệ Thống Theo Vết Đối Tượng Chuyển
Động Trong Thời Gian Thực.
Q TRÌNH CƠNG TÁC
Từ 1986 Ỉ nay: cán bộ giảng dạy tại bộ mơn Hình Hoạ & Vẽ Kỹ Thuật, khoa
Kỹ Thuật Xây Dựng, trường Đại Học Bách Khoa tp. HCM.
TRƯỜNG ĐH BÁCH KHOA
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
PHÒNG ĐÀO TẠO SĐH
ĐỘC LẬP - TỰ DO – HẠNH PHÚC
--------------------
-------------------TpHCM, Ngày….tháng…..năm 20…..
NHIỆM VỤ LUẬN VĂN THẠC SĨ
I.
Họ và tên học viên: LÊ NGỌC TUYỀN
Phái: nam
Ngày tháng năm sinh: 01 / 01 / 1964
Nơi sinh: Quảng Ngãi
Chuyên ngành: Cơ Khí Chế Tạo Máy
MSHV: 00404096
TÊN ĐỀ TÀI
Điều Khiển Mơ Hình Hệ Thống Theo Vết Đối Tượng Chuyển Động Trong Thời Gian
Thực
II. NHIỆM VỤ VÀ NỘI DUNG
- Lắp đặt mơ hình thực của hệ thống theo vết đối tượng.
- Viết chương trình phát mô phỏng các đối tượng chuyển động
- Viết chương trình nhận dạng đối tượng chuyển động thu từ camera và điều khiển hệ
thống theo vết đối tượng.
- Điều độ hệ thống
- Đánh giá kết quả
III. NGÀY GIAO NHIỆM VỤ: .........................................................................................................
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: ........................................................................................
V. CÁN BỘ HƯỚNG DẪN: TS. Nguyễn Văn Giáp
CÁN BỘ HƯỚNG DẪN
CN. BỘ MÔN
QL CHUYÊN NGÀNH
TS. Nguyễn Văn Giáp
Nội dung và yêu cầu LVTN đã được hội đồng chun ngành thơng qua.
Ngày
TRƯỞNG PHỊNG ĐTSĐH
tháng
năm
TRƯỞNG KHOA QUẢN LÝ NGÀNH
Tóm tắt
Đề tài luận văn thạc sĩ “Điều khiển mơ hình hệ thống theo vết đối tượng chuyển
động” nhằm thử nghiệm việc thêm chiều thời gian vào không gian điều khiển. Phương
pháp thử nghiệm là chế tạo mơ hình vật lý của một hệ thống quay theo vết các đối
tượng chuyển động và xây dựng phần mềm điều khiển mô hình hoạt động trong thời
gian thực. Mơ hình sẽ thu nhận hình ảnh mơi trường qua một cảm biến camera, máy
tính sẽ phân tích và nhận dạng các đối tượng chuyển động và điều khiển mơ hình quay
về hướng đối tượng chuyển động được lựa chọn. Ngoài ra, để thử nghiệm một số giải
thuật điều độ trong thời gian thực, đề tài có đề ra thêm một nhiệm vụ cho mơ hình là
tiêu diệt các đối tượng chuyển động khi các đối tượng này đến được một vị trí giới hạn
trước khi chúng biến mất khỏi tầm quan sát của camera.
Lời cảm ơn
Chân thành cảm ơn thầy Nguyễn Văn Giáp, chủ nhiệm bộ môn Cơ Điện Tử,
trường đại học Bách Khoa thành phố Hồ Chí Minh đã hướng dẫn để có được luận văn
này. Khơng có thầy, luận văn chắc chắn khơng thể hồn thành.
Cám ơn các thầy trong hội đồng bảo vệ đề cương luận văn thạc sĩ đã chỉ dẫn và
cho các nhận xét quý báu.
Cám ơn các thầy trong bộ môn Cơ Điện Tử đã cung cấp thơng tin, tài liệu và
nhiều chỉ dẫn rất bổ ích cho việc hồn thành luận văn.
Cám ơn gia đình, đồng nghiệp và bạn bè đã động viên, góp ý và giúp đỡ cho
việc hoàn thành luận văn.
Mục lục
Chương 1
Tổng quan ............................................................................................... 1
1.1
Cơ sở nghiên cứu .........................................................................................................1
1.2
Vấn đề nghiên cứu .......................................................................................................2
1.3
Tình hình nghiên cứu về các hệ thống thời gian thực. .................................................2
1.4
Phương pháp nghiên cứu .............................................................................................5
1.5
Mục tiêu của đề tài.......................................................................................................6
1.6
Các nội dung cần giải quyết của luận văn....................................................................7
1.7
Giới hạn phạm vi thực hiện của luận văn.....................................................................7
Chương 2
2.1
Giới thiệu mơ hình ................................................................................. 9
Phần cứng.....................................................................................................................9
2.1.1
Cơ sở thiết kế và xây dựng phần cứng của mơ hình....................................................... 9
2.1.2
Bộ phận quan sát .......................................................................................................... 10
2.1.3
Bộ phận chuyển động................................................................................................... 10
2.1.4
Bộ phận điều khiển....................................................................................................... 11
2.1.5
Cân chỉnh hệ thống....................................................................................................... 11
2.2
Phần mềm ..................................................................................................................12
2.2.1
Yêu cầu của phần mềm điều khiển............................................................................... 12
2.2.2
Công cụ thiết lập phần mềm......................................................................................... 12
2.2.3
Yêu cầu để chạy phần mềm.......................................................................................... 13
2.2.4
Giao diện phần mềm .................................................................................................... 13
2.2.5
Bắt hình từ camera ....................................................................................................... 14
2.2.6
Theo vết đối tượng chuyển động.................................................................................. 15
2.2.7
Điều độ hệ thống .......................................................................................................... 16
2.2.8
Điều chỉnh và vận hành động cơ .................................................................................. 17
2.2.9
Tiêu diệt đối tượng....................................................................................................... 19
2.2.10
Phát chương trình mơ phỏng ........................................................................................ 20
2.3
Chương trình mơ phỏng các đối tượng chuyển động.................................................22
2.3.1
Giới thiệu ..................................................................................................................... 22
2.3.2
Các tác vụ của chương trình mơ phỏng........................................................................ 24
Chương 3
3.1
Thiết kế tổng qt chương trình ứng dụng ....................................... 26
Xác định các yêu cầu của hệ thống ............................................................................26
3.1.1
Các yêu cầu về chức năng ............................................................................................ 26
3.1.2
Các yêu cầu về thời gian và an toàn ............................................................................. 26
3.2
Xác định các đặc tính kỹ thuật của chương trình.......................................................27
3.2.1
Q trình nhận dạng và điều khiển là tuần tự............................................................... 27
3.2.2
Quá trình nhận dạng và điều khiển là song song.......................................................... 28
3.3
Hiện thực chương trình ..............................................................................................29
Chương 4
4.1
Xác định các đối tượng chuyển động bằng camera .......................... 30
Một số phương pháp theo vết đối tượng chuyển động...............................................30
4.1.1
Thuật toán mean-shift và các giải thuật theo vết trên cơ sở thuật toán mean-shift – theo
vết chuyển động 2 chiều (2D motion tracking) ........................................................................................... 30
4.1.2
Phương pháp phân chia chuyển động (motion segmentation)...................................... 31
4.1.3
Sử dụng hai camera (stereo vision) – theo vết chuyển động 3 chiều (3D motion
31
tracking)
4.2
Xác định đối tượng chuyển động của chương trình ứng dụng...................................32
4.2.1
Bỏ hình nền .................................................................................................................. 32
4.2.2
Biểu diễn lại chuyển động............................................................................................ 32
4.2.3
Phân chia chuyển động (motion segmentation)............................................................ 33
4.2.4
Xác định đối tuợng chuyển động ................................................................................. 34
4.2.5
Kết xuất dữ liệu............................................................................................................ 35
Chương 5
Điều khiển theo vết đối tượng ............................................................. 36
5.1
Đổi toạ độ...................................................................................................................36
5.2
Điều khiển động cơ ....................................................................................................39
5.3
Dự đoán thời gian vận hành động cơ .........................................................................40
Chương 6
6.1
Điều độ hệ thống .................................................................................. 42
Giới thiệu ...................................................................................................................42
6.1.1
Kiểm tra tính khả thi .................................................................................................... 42
6.1.2
Xây dựng kế hoạch điều độ.......................................................................................... 43
6.1.3
Thực hiện tác vụ........................................................................................................... 45
6.2
Hiện thực chương trình điều độ .................................................................................45
6.2.1
Kiểm tra tính khả thi .................................................................................................... 45
6.2.2
Xây dựng kế hoạch điều độ và thực hiện điều khiển.................................................... 46
Chương 7
Đánh giá kết quả .................................................................................. 48
7.1
Phương pháp đánh giá................................................................................................48
7.2
Đánh giá hoạt động động theo vết đối tượng .............................................................48
7.2.1
Đánh giá ở điều kiện vận hành tốt nhất........................................................................ 48
7.2.2
Thay đổi tốc độ động cơ:.............................................................................................. 50
7.2.3
Đánh giá khả năng dự đoán.......................................................................................... 50
7.3
Đánh giá hoạt động điều độ .......................................................................................52
7.3.1
Khi tài nguyên là tối đa ................................................................................................ 52
7.3.2
Khi tài nguyên hệ thống có giới hạn ............................................................................ 53
Chương 8
Kết luận................................................................................................. 55
8.1
Mức độ hoàn thành đề tài...........................................................................................55
8.2
Huớng phát triển của đề tài ........................................................................................56
Tài liệu tham khảo ...................................................................................................... 57
Chương 1
1.1
Tổng quan
Cơ sở nghiên cứu
Các hệ thống thời gian thực (real-time systems) đã và đang phát triển rất mạnh
trong thời gian gần đây. Các hệ thống này xuất hiện hầu như khắp nơi trong cuộc sống
hàng ngày của chúng ta. Động lực phát triển của các hệ thống thời gian thực là sự phát
triển mạnh mẽ của kỹ thuật thông tin. Trong nhiều lãnh vực công nghiệp, việc sử dụng
các hệ thống thời gian thực là không thể thay thế được chẳng hạn như các hệ thống
điều khiển bay, các hệ thống điều khiển tàu không gian con thoi, các hệ thống điều
khiển điện tử trong hàng không, các hệ thống điều khiển kế hoạch năng lượng hạt
nhân…[H. Kopetz-97].
Sự phát triển các hệ thống thời gian thực cho phép thay thế các hệ thống cũ
(thủy lực, khí) kém an toàn bằng những hệ thống thời gian thực hoạt động theo thời
gian tới hạn (time-critical) có độ an tồn cao. Thuận lợi chính yếu của sự thay thế này
là gia tăng độ an toàn của thiết bị và hơn nữa là giảm chi phí cho việc phát triển, bảo
trì thiết bị. Sự thay thế này có thể giảm các chi phí của tồn hệ thống, giảm trọng
lượng, cải thiện độ tin cậy và tăng chất lượng phục vụ. [G. Bauer-00].
Các ứng dụng của hệ thống thời gian thực trải rộng từ các bộ vi điều khiển đơn
giản đến các hệ phân bố phức tạp cao cấp chẳng hạn như các hệ thống điều khiển bay,
các ứng dụng chế tạo linh hoạt, các hệ thống thông minh, các hệ thống truyền thông đa
phương tiện tốc độ cao.
Nghiên cứu để hiểu rõ về hệ thống thời gian thực, nghiên cứu việc lập trình điều
khiển trong thời gian thực sẽ tạo sự thuận lợi cho việc ứng dụng hệ thống thời gian
thực trong các ngành cơng nghiệp nhất là trong điều khiển.
Để có công cụ thử nghiệm, đánh giá, cần thiết phải xây một mơ hình vật lý mơ
phỏng một hệ thống điều khiển theo thời gian thực. Việc điều khiển mơ hình có thể sẽ
là nền hay gợi ý cho các ứng dụng thời gian thực phức tạp sau này.
Trang 1
1.2
Vấn đề nghiên cứu
Theo Oxford Dictionary of Computing: Hệ thống thời gian thực là bất kỳ hệ
thống nào mà trong đó thời gian lúc đầu ra được thiết lập là có ý nghĩa, có ý nghĩa vì
thơng thường đầu vào tương ứng với một số vận động trong thế giới vật lý và đầu ra
phải có quan hệ với cùng vận động đó. Khoảng cách giữa thời gian đầu vào và thời
gian đầu ra phải đủ nhỏ để tính hợp thời là chấp nhận được.
Theo Kopetz-97: Sự đúng đắn của các hệ thống thời gian thực không chỉ phụ
thuộc vào sự đúng đắn của các kết quả chúng chuyển giao mà còn phụ thuộc vào thời
gian lúc các kết quả này được chuyển giao.
Như vậy các hệ thống thời gian thực được xác định như là một hệ thống mà
trong đó sự đúng đắn của hệ thống phụ thuộc khơng chỉ kết quả logic của tính tốn mà
cịn phụ thuộc vào thời gian kết quả được thiết lập. Nếu các ràng buộc về thời gian của
hệ thống không được thoả mãn thì sai hỏng sẽ xảy ra, do đó vấn đề cơ bản là các ràng
buộc về thời gian của hệ thống phải được bảo đảm thoả mãn. Việc đảm bảo về thời
gian địi hỏi hệ thống phải có thể dự đoán được, nghĩa là khi một tác vụ được kích hoạt
nó phải có khả năng xác định thời gian hồn thành một cách chắc chắn.
Có thể có một số sự kiện xảy ra trong khoảng thời gian gần nhau với tầm quan
trọng của các sự kiện có thể khác nhau (ví dụ các sự kiện có liên quan đến an tồn có
thể quan trọng hơn một u cầu ghi lại dữ liệu). Khi đó các tài nguyên của hệ thống
cần được điều độ (schedule) để tất cả các yêu cầu có thể được đáp ứng trong định mức
thời gian của chúng.
1.3
Tình hình nghiên cứu về các hệ thống thời gian thực.
Về cấu trúc chương trình, các kỹ thuật có được từ các nghiên cứu về quản trị đã
làm nền cho các phân tích điều độ của hệ thống thời gian thực và bài báo của Liu và
Layland (1973) về các kỹ thuật này đã duy trì ảnh hưởng của chúng trong hơn một
thập kỷ. Đây cũng là thời gian phát triển các kỹ thuật cơ bản cho các ngôn ngữ lập
trình bắt đầu từ bài báo của Hoare (1969). Jensen (1976) đã đưa ra các hàm thời gian
và tiện ích (time/utility functions) cho kế hoạch rada của quân đội Hoa Kỳ để chống
tên lửa đạn đạo – SAFEGUARD. Jensen (1983) tiếp tục các nghiên cứu về các hàm
Trang 2
thời gian và tiện ích gia tăng tại khoa Computer Science của đại học Carnegie Mellon.
Jensen, Locke và Tokuda (1985) xuất bản sách (Real-Time Systems Symposium (tập
chuyên đề về hệ thống thời gian thực). Mok (1983) đã chỉ ra các khó khăn trong quan
hệ giữa lý thuyết điều độ với các phương pháp xác minh và với các nhu cầu thực
nghiệm, các chương trình đa xử lý.
Giả thuyết đồng bộ (cho rằng các sự kiện ngoài được sắp đặt theo thời gian và
các đáp ứng chương trình được xem như tức thời đối với mỗi sự kiện) được ứng dụng
trong ESTEREL (Bery & Gonthier, 1992), các họ ngôn ngữ LUSTRE và SIGNAL và
trong Statecharts (Harel, 1987).
Các giải thuật điều độ theo độ ưu tiên cố định (fixed priority) có sự đóng góp
của nhiều tác giả. Bài báo của Liu và Layland (1973) xem xét vấn đề về khả năng có
thể thực hiện được việc xác định đặc tính kỹ thuật đối với một tập cố định các tác vụ
định kỳ, độc lập và xác định khoảng tới hạn mà tại đó tất cả các tác vụ đều sẵn sàng để
bắt đầu tính tốn. Joseph và Pandya (1986) sử dụng các phân tích thời gian để xác định
khả năng có thể thực hiện được của các tác vụ theo thứ tự ưu tiên cố định. Harier
(1987) làm việc với một hệ thống kiểm chứng logic thời gian đơn giản đã nghiên cứu
về các phân tích thời gian đáp ứng cho một mơ hình chương trình cho phép gọi các
thủ tục giữa các tác vụ với các mức độ ưu tiên khác nhau. Lehoezky và các cộng sự
(1989) sử dụng mơ hình hệ thống có thời gian định hạn bằng thời gian định kỳ giám
sát đã phát triển điều kiện cần và đủ cho khả năng có thể thực hiện được dùng các
lượng công tác (workload) trong các định kỳ sử dụng bộ xử lý. Nassor và Bres (1991)
đã mở rộng mô hình Lehoezky cho trường hợp thời gian định hạn nhỏ hơn hoặc bằng
thời gian định kỳ giám sát. Audsley và các cộng sự (1991) đã xác định các thời gian
đáp ứng bằng cách sử dụng quan hệ tái diễn (recurent). Lehoezky (1990) đã sử dụng
phân tích lượng cơng tác cung cấp hai giải pháp để xử lý trong trường hợp thời gian
định hạn lớn hơn thời gian định kỳ giám sát. Tindell (1993) đã cung cấp nhiều phân
tích tổng quát ứng dụng thời gian đáp ứng. Audsley và các cộng sự (1995) đã có khảo
sát tổng qt cơng việc điều độ theo độ ưu tiên cố định.
Cofman (1986), Blazewiez và các cộng sự (1986) đã cung cấp nền tảng tổng
quát cho điều độ động. Các nghiên cứu tổng quát về công việc điều độ động các tác vụ
Trang 3
thời gian thực có thể tìm thấy trong Stankovic và Ramamritham (1988, 1993). Mok và
Dertouzos (1978) và Dertouzos và Mok (1989) đã nghiên cứu điều độ online các tác
vụ thời gian thực đa xử lý, chú thích rằng trong hầu hết các hoàn cảnh của thế giới
thực các giải thuật điều độ tối ưu là không tồn tại (Hong & Leung, 1988; Chetto &
Chetto, 1989; Mok, 1989). Locke (1985) đã đưa ra một số giải pháp cho các giải thuật
best-effort, giải thuật đã cải thiện việc thực thi trong điều kiện quá tải. Với các ràng
buộc về thời gian định hạn và tài nguyên được thêm vào, nhiều giải pháp đã được phát
triển cho việc điều độ trên cơ sở hoạch định động: Ramamritam và Stankovic (1984),
Ramamritam và các cộng sự (1990), Stankovic và Ramamritam (1991), Zhao và
Ramamritam (1987), Zhao và các cộng sự (1987) dựa trên quy luật thực hiện tối đa số
lượng các tác vụ. Các giải thuật cố gắng đạt tối đa giá trị của các tác vụ đáp ứng được
thời gian định hạn của chúng có thể tìm thấy trong Biyabani và các cộng sự (1888),
Butazzo và Stankovic (1993), Locke (1985) và Zlokapa (1993). Zlokapa ứng dụng giải
thuật Well-time cho các mơ hình tác vụ đơn giản và cố gắng tối ưu hoá số lượng các
tác vụ được xem xét cho việc điều độ.
Các xu huớng nghiên cứu gần đây về hệ thống thời gian thực tập trung vào các
lãnh vực:
• Cấu trúc các hệ thống thời gian thực đa xử lý
• Các giải thuật điều độ đa xử lý, các giải thuật phân bố
• Mơ hình hố hệ thống thời gian thực.
• Các ứng dụng thời gian thực trong các hệ thống nhúng (embedded
system).
• Các ứng dụng trong cơng nghiệp: mạng máy tính, viễn thơng, robot, hệ
thống công nghiệp… đặc biệt trong công nghiệp ô tô và không gian.
Các mong muốn trong các hệ thống thời gian thực tiên tiến:
• Kết hợp các tác vụ thời gian thực cứng (hard), mềm (soft) và dẻo (firm)
bao gồm khả năng ứng dụng các chính sách điều độ động để có quy luật
tối ưu.
Trang 4
• Điều độ về tác vụ cho một hệ thống thời gian thực mà hành vi là thích
nghi (adaptive), biến hình (reconfigurable), phản thân (reflexible) và
thơng minh (intelligent) một cách tuỳ động.
• Tin cậy, an ninh và an tồn.
1.4
Phương pháp nghiên cứu
Để mơ phỏng và nghiên cứu tìm hiểu các ràng buộc về thời gian khi điều khiển
thong thời gian thực, luận văn này sẽ xây dựng mơ hình vật lý và phần mềm điều
khiển một hệ thống tự động theo vết một đối tượng chuyển động được lựa chọn trong
các đối tượng mà cảm biến camera phát hiện và tiêu diệt các đối tượng khi chúng đến
vị trí giới hạn
Bộ phận quay tương tự như một khẩu pháo gồm hai khâu dẫn, hai khớp bản lề
(hình 1). Khâu cuối mang một đèn laze phát tia sáng tập trung theo hướng của khâu.
Máy tính 2 sẽ phát chương trình mơ phỏng các đối tượng chuyển động trên mặt
phẳng xuất hiện ngẫu nhiên và chuyển động với các vận tốc khác nhau. Máy chiếu sẽ
phóng to hình ảnh lên một màn hình lớn.
Camera đóng vai trị của hệ thống giám sát mơi trường sẽ thu nhận hình ảnh
trên màn hình theo một thời gian định kỳ và chuyển tín hiệu ảnh cho máy tính 1 xử lý.
Máy tính 1 sẽ phân tích kích thước, vị trí, vận tốc của đối tượng và phát lệnh cho bộ
phận quay chuyển động theo vết của đối tượng.
Trang 5
Hình 1: Mơ hình hệ thống tự động quay theo các đối tượng chuyển động
Khi đối tượng vượt qua đường bao vị trí báo động, đối tượng sẽ bị tiêu diệt.
Nếu tác vụ tiêu điệt đối tượng thành công, máy tính 1 sẽ phản hồi cho máy tính 2 xố
đối tượng bị tiêu diệt trong chương trình mơ phỏng.
Khi có nhiều đối tượng vượt quá đường bao vị trí báo động, hệ thống sẽ ứng
dụng các giải thuật điều độ theo thời gian thực để tiêu diệt tất cả đối tượng trước khi
các đối tượng vượt ra ngoài tầm kiểm sốt của camera.
Đây là một mơ hình hoạt động theo thời gian thực vì có ràng buộc thời gian cho
hệ thống điều khiển. Nếu đáp ứng hệ thống không đảm bảo thời gian giới hạn, vết đèn
laze sẽ nằm ngoài đối tượng theo vết, hoạt động của hệ thống sẽ sai hỏng. Khi có
nhiều đối tượng vượt qua đường bao, hệ thống phải được điều độ để tiêu diệt được tất
cả đối tượng trong thời gian giới hạn cho mỗi đối tượng (thời gian di chuyển từ vị trí
báo động đến khi vượt quá tầm quan sát của camera).
1.5
Mục tiêu của đề tài
Các hệ thống thời gian thực đã xuất hiện và phát triển trên thế giới nhiều thập
kỷ qua. Nhờ sự phát triển mạnh mẽ trong công nghệ thông tin, các hệ thống thời gian
thực đã được ứng dụng rộng rãi trong nhiều ngành công nghiệp.
Trang 6
Mục tiêu đầu tiên của luận văn là mong muốn tìm hiểu về hệ thống thời gian
thực để có các kinh nghiệm trong việc giải quyết các vấn đề có liên quan đến thời gian
thực.
Mục tiêu thứ hai của luận văn là xây dựng mơ hình thật và phần mềm điều
khiển một hệ thống điều khiển quay hướng theo vết một đối tượng chuyển động. Ứng
dụng được các kỹ thuật phân tích đặc điểm thời gian và điều độ thời gian thực trên hệ
thống này. Trên cơ sở mơ hình thật, có thể thử nghiệm và đánh giá các giải thuật điều
khiển, chọn được các giải thuật hợp lý cho việc điều khiển mơ hình và cho các ứng
dụng sau này.
Với các mục tiêu trên, đề tài có tên là:
“Điều khiển mơ hình hệ thống theo vết đối tượng chuyển động trong thời gian
thực”.
1.6
Các nội dung cần giải quyết của luận văn
Xây dựng mơ hình thực của hệ thống quay hướng theo đối tượng chuyển động
thu được từ camera.
Lập chương trình mơ phỏng các đối tượng chuyển động.
Phân tích hệ thống, xác định các đặc tính kỹ thuật và phân tích các đặc điểm
thời gian của hệ thống.
Lập chương trình xử lý ảnh thu được từ camera.
Điều khiển mơ hình đến được vị trí mong muốn đúng thời điểm.
Đánh giá một số giải thuật điều độ, ứng dụng các giải thuật điều độ trong điều
khiển mơ hình.
1.7
Giới hạn phạm vi thực hiện của luận văn
Do hạn chế về thiết bị, luận văn chỉ ứng dụng các giải thuật thời gian thực đơn
xử lý (uniprocessor).
Bộ phận quan sát chỉ dùng một camera.
Trang 7
Chỉ phân tích và đánh giá một số giải thuật thời gian thực áp dụng được trên mơ
hình.
Trang 8
Chương 2
Giới thiệu mơ hình
Mơ hình bao gồm hệ thống phần cứng và phần mềm điều khiển.
2.1
Phần cứng
Hình 2 Mơ hình vật lý hệ thống theo vết đối tượng
2.1.1
Cơ sở thiết kế và xây dựng phần cứng của mơ hình
Hoạt động của mơ hình là cơ sở để kiểm tra và đánh giá phần mềm điều khiển.
Các bộ phận, thiết bị trong mơ hình phải bảo đảm tìm thấy được trên thị trường,
giá thành hợp lý.
Xem như mơ hình làm việc trong điều kiện khơng tải nên có thể bỏ qua phần
tính tốn động học, động lực học cũng như sức bền cho phần cơ.
Mơ hình cần phải được lắp đặt và cân chỉnh nhanh chóng.
Trang 9
Với các yêu cầu trên đề tài đã thiết lập phần cứng của mơ hình gồm các bộ phận
sau:
• Bộ phận quan sát
• Bộ phận chuyển động
• Bộ phận điều khiển
2.1.2
Bộ phận quan sát
Bộ phận quan sát bao gồm một PC Camera số của hãng JVC
Đặc tính kỹ thuật:
• Model: JVC 310
• Cảm biến CMOS 380K pixels.
• Góc mở 55°.
• Độ phân giải tối đa 640 x 480 (pixel x pixel). Độ phân giải được sử dụng
trong mơ hình cố định là 320 x 240 (pixel x pixel)
• Chuẩn màu tối đa: RGB 24 bits.
• Kết nối với máy tính qua cổng USB.
• Tốc độ truyền dữ liệu tối đa là 30 Frame / giây (khi sử dụng độ phân giải
320 x 240 (pixel x pixel)
2.1.3
Bộ phận chuyển động
Bộ phận chuyển động gơm hai khâu quay có chuyển động độc lập nhau và được
điều khiển bởi hai động cơ servo giống nhau.
Đặc tính kỹ thuật của mỗi động cơ:
• Hãng sản xuất: Panasonic
• Model: MSD5A1A1XX
• Cơng suất 50W
• Nguồn xoay chiều 100 ÷ 110 V.
Trang 10
• Tín hiệu điều khiển: DC 5V.
• Chu kỳ xung điều khiển tối thiểu 2 µs (tần số xung tối đa 500KHz).
• Độ phân giải của encoder: 2500 xung / vịng.
Góc mở của camera là 55°, độ phân giải ngang của camera là 320 pixel, tương
đương với 382 xung encoder. Độ phân giải ngang của camera (theo pixel) nhỏ hơn
bước xung encoder nên mơ hìmh chọn giải pháp điều khiển trực tiếp các khâu quay
không cần qua bộ phận giảm tốc và chấp nhận sai số khi chuyển đối từ toạ độ camera
sang toạ độ động cơ . Sai số khi chuyển đổi qua lại từ toạ độ camera sang toạ độ động
cơ sẽ không quá 1 pixel hay sẽ không quá 1 xung encoder.
Các động cơ được điều khiển trực tiếp bằmg một máy tính cá nhân qua giao tiếp
cổng song song của máy tính.
2.1.4
Bộ phận điều khiển
Bộ phận điều khiển gồm một máy tính cá nhân sử dụng hệ điều hành Window
XP. Máy tính phải có cổng giao tiếp USP dể kết nối với camera và cổng song song
(LPT) để kết nối với động cơ.
Ngồi ra khi trình diễn, đề tài cần thêm một máy tính để phát chương trình mơ
phỏng các đối tượng chuyển động.
Các máy tính cần phải liên kết nhau qua một mạng nội bộ có dùng giao thức kết
nối TCP/IP.
2.1.5
Cân chỉnh hệ thống
Vì động cơ AC servo được sử dụng trong mơ hình có encoder khơng phải loại
đo góc tuyệt đối, encoder cũng khơng có nguồn riêng (pin) để lưu giữ vị trí nên khi
khởi động, động cơ cần phải được xác định vị trí gốc. Vị trí gốc được sử dụng trong
mơ hình là điểm trung tâm nhận được trên màn hình camera. Để vết đèn trên bộ phận
xoay tiếp cận được điểm trung tâm một cách nhanh chóng, phần mềm điều khiển cần
đánh dấu được vị trí trung tâm của camera, các động cơ phải điều chỉnh được vị trí
bằng tay. Người điều khiển sẽ điều chỉnh động cơ để ảnh của vết đèn thu được trên
camera trùng khớp với điểm trung tâm của camera và đánh dấu vị trí gốc.
Trang 11
Ngồi ra khi trình diễn, cần phải xây dựng được quan hệ về vị trí của các đối
tượng chuyển động được phát ra bởi chương trình mơ phỏng và phần mềm điều khiển
động cơ trong các tác vụ cần xoá đối tượng, cần thiết phải điều chỉnh vị trí đặt mơ hình
sao cho điểm trung tâm của màn hình mơ phỏng trùng khớp với điểm trung tâm của
camera.
Hình 3 Điều chỉnh cho ảnh của vết đèn trùng với vị trí trung tâm camera để xác định vị trí gốc.
Điều chỉnh vị trí hệ thống đển vị trí trung tâm của ảnh từ máy tính 2 trùng với điểm trung tâm của
camera.
2.2
Phần mềm
2.2.1
Yêu cầu của phần mềm điều khiển
Nhận dạng được đối tượng chuyển động, xác định được vị trí, vận tốc, kích cỡ
của đối tượng chuyển động.
Điều khiển động cơ xoay theo đối tượng trong thời gian thực.
Có các tuỳ chọn và điều chỉnh để thử nghiệm đánh giá các giải thuật.
2.2.2
Công cụ thiết lập phần mềm
Phần mềm điều khiển được viết bằng ngơn ngữ lập trình C++, theo hướng đối
tượng, được soạn thảo và biên dịch bằng trình biên dịch Microsoft Visual Studio .Net
2005.
Trang 12
Phần mềm có sử dụng một số hàm thư viện computer vision lấy từ bộ thư viện
nguồn mở OCV phiên bản 5.0 (Open Computer Vision 5.0) của hãng Intel và thư viện
inpout32.dll để xuất nhập dữ liệu qua cổng song song trên WindowXP từ địa chỉ
.
2.2.3
Yêu cầu để chạy phần mềm
Để chạy được phần mềm, hệ thống cần được cài đặt các phần mềm:
• Hệ điều hành Window32.
• DotNet FrameWork phiên bản 2.0 của hãng Microsoft.
• DirectX phiên bản 9.0 của hãng Microsoft..
2.2.4
Giao diện phần mềm
Hình 4 Cửa sổ chính khi bắt đầu chương trình
Gồm các màn hình quan sát, nút bấm và các thực đơn (pulldown menu). Giao
diện được tổ chức để các lệnh và các thông số thường sử dụng hay cần thao tác nhanh
được hiển thị ngay trên cửa sổ chính, các lệnh hay các thơng số cài đặt ít sử dụng hơn
được thực thi hay cài đặt qua thực đơn.
Trang 13
Sau đây là một số tác vụ chính của phần mềm.
2.2.5
Bắt hình từ camera
Nhấn nút “Bắt hình”, để bắt đầu bắt hình từ camera. Ảnh nhận từ camera được
hiển thị trên màn hình “Ảnh gốc”. Phần mềm sẽ bắt đầu phân tích hình ảnh nhận được
từ camera, và phát hiện các đối tượng chuyển động. Nếu phát hiện có đối tượng, phần
mềm sẽ đưa các đối tượng đã phát hiện vào danh sách nhận dạng đối tượng, tính vận
tốc, kích thước (theo điểm ảnh). Người điều khiển có thể kiểm tra các đối tượng này
trên màn hình “Theo dõi đối tượng”.
Hình 5 Cứa sổ khi bắt hình.
Nút bấm “Dừng” ngay bên dưới nút bấm “Bắt hình” để tạm dừng (pause) hoặc
khởi động lại chương trình.
Để xác định vị trí trung tâm của ảnh và ước lượng khoảng cách trên ảnh thu từ
camera, có thể cho hiển thị lưới trên màn hình gốc. Trong chương trình kích thước lưới
cố định là 20 pixel.
Để hiển thị hoặc tắt lưới: chọn thực đơn “Quan sát” Ỉ “Hiển thị lưới hỗ trợ”
Trang 14
Để quan sát vị trí giới hạn trong tác vụ diệt đối tượng, có thể hiển thị vị trí giới
hạn trên màn hình gốc. Vị trí giới hạn có thể điều chỉnh ngay trên cửa sổ chính bằng
cách điều chỉnh thanh trượt hoặc thay đổi giá trị trong ô số “Vị trí đường giới hạn”.
Để hiển thị hoặc tắt hiển thị đường giới hạn: chọn thực đơn “Quan sát”Ỉ
“Hiển thị đường giới hạn”.
Hình 6 Hiển thị luới và vị trí đường giới hạn
2.2.6
Theo vết đối tượng chuyển động
Bấm nút “Theo vết” để bắt đầu hoặc bỏ hoạt động theo vết đối tượng.
Vì tài ngun của hệ thống có giới hạn (chỉ có một bộ phận theo vết) nên chỉ
một đối tượng trong số các đối tượng chuyển động được nhận dạng được đánh dấu để
điều khiển theo vết đối tượng. Phần mềm có đưa ra một số tuỳ chọn về “Phương thức
bắt đối tượng” để theo vết:
• Vận tốc ngang Max: chọn đối tượng theo vết có vận tốc theo phương x là
lớn nhất
• Thời gian đến Min: chọn đối tượng có thời gian đến biên phải của màn
hình camera là nhỏ nhất. Nếu đối tượng không thể đến được biên phải,
thời gian đến sẽ được đặt giá trị lớn nhất của biến số.
Trang 15
• Vận tốc thực Max: chọn đối tượng có vận tốc thật ( Vx 2 + Vy 2 ) là lớn
nhất
• Chiều rộng đối tượng Min: chọn đối tượng có kích thước chiều rộng là
nhỏ nhất.
• Chiều rộng đối tượng Max: chọn đối tượng có kích thước chiều rộng là
lớn nhất.
Đối tượng được chọn theo vết sẽ được đấnh dấu màu đỏ. Thanh trạng thái
(status bar) sẽ hiển thị toạ độ điểm ảnh ( mục ObjectXY) của đối tượng đang được theo
vết.
Ngoài các phương thức bắt đối tuợng được định sẵn trên, phần mềm còn cho
phép chọn một đối tượng bất kỳ để theo vết bằng cách rê (drag) chuột trên màn hình
“Theo dõi đối tượng” để vẽ một cửa sổ hình chữ nhật (xác định bằng hai đỉnh đối diện
của hình chữ nhật) bao quanh đối tượng cần chọn để theo vết.
Hình 7 Tùy chọn đối tượng để theo vết bằng cách xác định một cửa sổ bao quanh đối tượng
2.2.7
Điều độ hệ thống
Bấm nút “Điều độ” để bắt đầu hoặc huỷ bỏ hoạt động điều độ. Khi chế độ điều
độ hoạt động, các đối tượng vượt quá vị trí giới hạn sẽ bị tiêu diệt. Với mục đích thử
nghiệm, phần mềm cho phép chọn độ ưu tiên khi thực hiện giải thuật điều độ. Các độ
ưu tiên được hỗ trợ trong hoạch định điều độ gồm:
Trang 16
• Thời gian đến nhỏ nhất (FCFS): đối tượng đến trước sẽ được ưu tiên sắp
xếp vào danh sách tác vụ để thực hiện trước.
• Thời gian xử lý nhỏ nhất: các đối tượng có thời gian để động cơ di
chuyển đến vị trí của chúng từ vị trí hiện tại của động cơ là nhỏ nhất sẽ
được ưu tiên xếp vào danh sách tác vụ.
• Thời gian hạn định nhỏ nhất: các đối tượng có thời gian hạn định
(deadline) nhỏ nhất nghĩa là thời gian để đối tượng di chuyển từ vị trí
giới hạn đến vị trí bờ phải của camera là nhỏ nhất sẽ được ưu tiên khi
xếp vào danh sách tác vụ.
Hình 8 Giao diện khi vận hành điều độ hệ thống
2.2.8
Điều chỉnh và vận hành động cơ
Trong một phiên làm việc, trước khi vận hành, động cơ cần được cân chỉnh để xác
định vị trí gốc. Để điều chỉnh động cơ và xác định vị trí gốc, nhấn nút “Calib Motor”
để mở hộp thoại “Calibrate and Adjust Motor”
Trang 17