Robot là loại máy có thể lập trình điều khiển tự động bằng máy tính máy tính ở đây có thể được hiểu là một bộ vi điều khiển hoặc một máy tínhPC để thực hiện các di chuyển, cầm nắm các vậ
Trang 1NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Chữ ký GVHD
LỜI NÓI ĐẦU
Cùng với sự phát triển không ngừng của các ngành khoa học, các ngành công nghiệp cũng phát triển nhanh chóng Việc áp dụng các máy móc hiện đại vào sản suất là một yêu cầu không thể thiếu trong các nhà máy nhằm tăng năng suất , tăng chất lượng và giảm giá thành sản phẩm Song song với
Trang 2sự phát triển đó , công nghệ chế tạo Robot cũng phát triển nhanh chóngnhằm đáp các nhu cầu về sản xuất , quốc phòng…
Ở Việt Nam, công nghệ Robot và ứng dụng Robot vào sản xuất chỉ ởgiai đoạn đầu và hứa hẹn nhiều tiềm năng trong tương lai Muốn có một nềnkinh tế phát triển, nền công nghiệp tiên tiến, việc ứng dụng Robot vào sảnxuất và đời sống là điều cần thiết Từ những suy nghĩ thiết thực đó, mặc dùkiến thức còn hạn chế nhưng chúng em cũng cố gắng nghiên cứu về côngnghệ chế tạo và điều khiển Robot trong phạm vi đồ án tốt nghiệp với ướcmuốn có những đóng góp vào công nghệ chế tạo Robot của nước nhà trongthời gian tới
Đồ án của chúng em chọn đó là “ Thiết kế và chế tạo Robot chân rết Bám vật ” Với camera có thể quay, chụp ảnh của địa hình và gửi về máy
tính, theo dõi đối tượng dưới sự giám sát của máy tính, được điều khiểnkhông dây bởi sóng RF Tuy nhiên, với kinh phí và trình độ hạn hẹp, chúng
em chỉ dừng lại với mô hình, rất mong thầy cô, các bạn có thể đóng góp ýkiến và định hướng phát triển đề tài trong tương lai
Trước tiên, chúng em xin chân thành cảm ơn thầy giáo Lê Văn Ngự
đã tận tình giúp đỡ theo dõi, động viên và khuyến khích chúng em hoànthành tốt đề tài Em xin chân thành cảm ơn Ban giám hiệu, toàn thể thầy cô
và đặc biệt là các thầy cô khoa Cơ Khí đã tạo điều kiện thuận lợi cho emhoàn thành tốt đề tài này
Hà nội, ngày tháng năm 2012
Sinh viên thực hiện:
Đoàn Trung Hiếu Trần Trung Sơn Trần Ngọc Tuấn
Trang 31.2 Các vấn đề đặt ra 6
1.3 Phương pháp xây dựng đề tài 7
1.4 Phạm vi và giới hạn nghiên cứu 7
CHƯƠNG II : TỔNG QUAN VỀ ROBOT CHÂN RẾT 8
2.1 Lịch sử ra đời và phát triển của Robot 8
2.2 Giới thiệu Robot chân rết 9
2.2.1 Định nghĩa 9
2.2.2 Phân loại 9
2.3 Thành phần chính của Robot chân rết 11
2.3.1 Thành phần chính 11
2.3.2 Phần điện – điện tử 11
2.3.3 Phần giao tiếp và truyền thông 14
2.3.4 Giới thiệu MATLAB 25
2.4 Tổng quan về xử lý ảnh 25
2.4.1 Bộ lọc trung vị (Median filter) 26
2.4.2 Bộ lọc trung bình (Mean filter) 27
2.4.3 Ngưỡng (Thresholding) 28
2.4.4 Gán nhãn cho đối tượng (Component labeling) 30
2.4.5 Phương pháp hình thái học (Morphological operator) 31
2.4.6 Nền trừ (Background subtraction) 34
CHƯƠNG III : THIẾT KẾ MÔ HÌNH HỆ THỐNG 36
3.1 Xây dựng mô hình cơ khí 36
3.1.1 Mô hình 3D 36
3.1.2 Các thành phần chính của robot 37
3.2 Phương trình động học robot 38
3.3 Tính toán hệ dẫn động cơ khí 40
3.4 Thiết kế hệ thống điều khiển 42
3.4.1 Mạch điều khiển 43
3.5 Thuật toán xử lý ảnh 47
3.5.1 Đối với trường hợp bám theo màu của đối tượng: 47
3.5.2 Đối với trường hợp bám theo đối tượng bất kỳ di chuyển: 49
HÌNH Hình 2.1 Robot sáu chân Genghis 10
Hình 2.2 Robot chim 10
Hình 2.3 Robot cá đầu tiên tại Việt Nam 11
Hình 2.4 Vi điều khiển Atmega8 12
Hình 2.5 Sơ đồ chân IC L298 13
Trang 4Hình 2.6 Truyền 8 bit theo phương pháp song song và nối tiếp 15
Hình 2.7 Mã hóa theo Manchester 17
Hình 2.8 điều chế một mã ASCII ký tự K dùng phương pháp điều biên 19
Hình 2.9 điều chế một mã ASCII ký tự K dùng phương pháp điều tần 20
Hình 2.10 điều chế một mã ASCII ký tự K dùng phương pháp điều pha 21
Hình 2.11 Module thu phát DRF7020D13 21
Hình 2.12 Biều đồ thời gian 23
Hình 2.13 Model IPcam541 24
Hình 2.14 Bộ lọc trung vị 26
Hình 2.15 Median filter (a):ảnh gốc, (b):ảnh sau khi qua bộc lọc trung vị 27
Hình 2.16 (a): ảnh gốc, (b),(c): ảnh qua bộ lọc trung vị kích thước cửa sổ lần lượt là 5x5 và 7x7 27
Hình 2.17 Bộ lọc trung bình 27
Hình 2.18 Mean filter:(a)- ảnh gốc (b)- ảnh sau khi qua bộ lọc trung bình .28 Hình 2.19 (a): ảnh gốc, (b), (c): ảnh qua bộ lọc trung bình với cửa sổ lọc là 5x5 và 10x10 28
Hình 2.20 (a) - ảnh gốc, (b) - ảnh sau khi lấy ngưỡng 29
Hình 2.22 (a) Kết nối 4 hướng (b) Kết nối 8 hướng 30
Hình 2.23 Giãn nở ảnh nhị phân 32
Hình 2.24 Phương pháp giãn nở 32
Hình 2.26 Ảnh nhị phân khi xói mòn 33
Hình 2.27 (a) Ảnh nền (b) Ảnh quan sát được (c) Ảnh đầu ra 34
Hình 2.28 Ảnh hưởng của ngưỡng; (a): ảnh thu được, (b),(c):đối tượng chuyển động khi ngưỡng lớn (b) và khi ngưỡng nhỏ (c) 35
Hình 3.1 Mô hình 3D robot chân rết 35
Hình 3.2 Thân robot 37
Hình 3.3 Mô hình hóa hệ thống điều khiển 42
Hình 3.4 Jump nạp chíp 43
Hình 3.5 Vi điều khiển Atmega8 44
Hình 3.6 Khối mạch công suất 45
Hình 3.7 Jump module RF 46
Hình 3.8 Jump kết nối LCD, cảm biến, còi, encoder 46
Hình 3.9 Acqui 12V 47
Hình 3.10 Khối nguồn 47
Hình 3.11 Lưu đồ thuật toán khi bám theo màu của đối tượng 48
Hình 3.12 Lưu đồ thuật toán cho trường hợp bám đối tượng 50
CHƯƠNG I : GIỚI THIỆU CHUNG
1 1 Giới thiệu chung về Robot chân rết
Robot chân nết nói riêng và robot phỏng sinh phỏng sinh là một thành phần có vai trò quan trọng trong ngành Robot học Cũng với sự phát triển
Trang 5mạnh mẽ của các hệ thống Cơ - Điện tử, robot tự hành ngày một được hoànthiện và càng cho thấy lợi ích của nó trong công nghiệp và sinh hoạt.
Với sự phát triển mạnh mẽ của khoa học kĩ thuật, cộng với nhu cầu conngười ngày càng cao, tiềm năng ứng dụng của robot tự hành hết sức rộnglớn Có thể kể đến một vài ứng dụng của Robot Phỏng sinh như:
– Vận chuyển vật liệu, hàng hóa trong các tòa nhà, nhà máy, cửa hàng,sân bay, thư viện…
– Kiểm tra trong các môi trường nguy hiểm, khắc nhiệt như các nơinhiễm khí độc, môi trường nước, các đường ống ngầm…
– Dùng trong lĩnh vực quân sự, robot do thám, canh gác…
– Khám phá không gian, di chuyển trên hành tinh…
– Phục vụ sinh hoạt gia đình, hỗ trợ người khuyết tật…
Còn rất nhiều ứng dụng khác nữa của bionics Robot, nhưng cũng cónhững hạn chế chưa giải quyết được của robot phỏng sinh, như chi phí chếtạo cao, đã không cho phép chúng được sử dụng rộng rãi
Robot phỏng sinh là một từ nói chung cho đa số các Robot mà chúng tathấy ở bên ngoài Robot trong đề tài là một loại trong nhóm Robot Chính vìvậy, nhiệm vụ đặt ra cho Robot trong đề tài là nhiệm vụ riêng của một loạiRobot phỏng sinh ở ngoài thực tế Với khả năng của bản thân, nhóm đã đặt
ra nhiệm vụ là thiết kế và chế tạo một con Robot chân rết đơn giản, dichuyển trên địa hình phẳng, với kết cấu cơ khí vũng chắc và có tính thẩm mĩcao, chạy ổn định, gửi ảnh không dây về máy tính, Bám vật bằng camera
1.2 Các vấn đề đặt ra
Đây là một đề tài có rất nhiều ý tưởng, những suy nghĩ về cơ khí Robot rất
phong phú, tuy nhiên, khi lựa chọn làm đề tài này chúng em gặp một số khó
khăn:
– Tìm động cơ phù hợp với Robot rất khó, yêu cầu của động cơ phảivừa có hộp giảm tốc lại phải có cả encoder, ngoài thị trường động cơloại này rất hiếm Thế nên, chúng em đã mua loại động cơ có hộpgiảm tốc và lắp thêm encoder cho nó
– Tài liệu về xử lý ảnh trên máy tính là hoàn toàn mới đối với cả nhóm.– Khi làm cơ khí, chúng em đã tính được việc gia công cơ khí là rất khókhăn nên Robot trong đề tài đã phải nhờ đến gia công CNC đối vớinhững chi tiết đòi hỏi độ chính xác cao(chân, con quay), và một số chitiết là làm bằng tay để đảm bảo được độ chính xác lúc chuyển độngcủa robot
– Khả năng gửi hình ảnh không dây về máy tính với tốc độ nhanh là rấtkhó, với độ nét của ảnh phải đủ để xác định được địa hình, việc tìm ragiải pháp phù hợp không hề đơn giản
Trang 6– Kinh phí thực hiện được đề tài là không nhỏ đối với sinh viên nênchúng em không thể mua được những đồ tối ưu nhất cho Robot.
1.3 Phương pháp xây dựng đề tài
Từ những nhiệm vụ đặt ra và thực tế bên ngoài, chúng em đã có nhữngbước làm cụ thể để hoàn thành đề tài như sau:
– Tích cực tra cứu thông tin, tìm tài liệu liên quan đến những gì phảidùng trong đồ án qua internet, qua những cuốn sách liên quan đến đềtài, tìm những đồ án, công trình nghiên cứu liên quan đến Robot chânrết…
– Liên tục lên gặp thầy hướng dẫn để có được những góp ý của thầy,sau đó kết hợp với ý tưởng của nhóm để có được một ý tưởng hoànchỉnh
– Phân công công việc cho từng người trong nhóm nhưng vẫn có sự hỗtrợ lẫn nhau giữa các thành viên
– Thiết kế cơ khí, vẽ mạch điều khiển, tính toán các linh kiện cần mua.– Liên lạc với các công ty để dặt hàng các linh kiện, đồng thời đi tìmkiếm những thứ có sẵn trên thị trường, mua đầy đủ những đồ cầnthiết
– Khi có dủ đồ, tiến hành chế tạo cơ khí, đi dặt mạch in, test thử cẩnthận
– Lập trình cho Robot
– Cho Robot chạy và so sánh với nhiệm vụ đặt ra cho đề tài
1.4 Phạm vi và giới hạn nghiên cứu
Robot chân rết là rất đa dạng và nhiều ý tưởng khác nhau Tuy nhiên,trong phạm vi đề tài tốt nghiệp, với những giới hạn về thời gian, tài chính vàtầm hiểu biết, nhóm chỉ chế tạo một mô hình Robot chân rết với khả năngsau:
– Đề tài chỉ nghiên cứu loại Robot chân rết có 32 chân di chuyển trênđịa tương đối phẳng
– Encoder tương đối 100 xung, độ chuẩn xác không cao
– Vật liệu chế tạo đơn giản, dễ tìm ngoài thị trường
– Xử lý ảnh trên máy tính
CHƯƠNG II : TỔNG QUAN VỀ ROBOT CHÂN RẾT
2.1 Lịch sử ra đời và phát triển của Robot
Trang 7Robot là loại máy có thể lập trình điều khiển tự động bằng máy tính( máy tính ở đây có thể được hiểu là một bộ vi điều khiển hoặc một máy tínhPC) để thực hiện các di chuyển, cầm nắm các vật, hoàn thành các công việcdưới tác động của môi trường Thường robot được sử dụng để thực hiện cáccông việc lặp đi lặp lại, các công việc dễ gây nhàm chán, nó cho các kết quảchính xác hơn nếu được thực hiện bởi con người.
Thuật ngữ Robot lần đầu tiên xuất hiện vào năm 1921 ở Tiệp Khắc trong tácphẩm R.U.R (Rossum’s Universal Robot) của nhà soạn kịch Karel Capekmang ý nghĩa người làm tạp dịch Kể từ đó thuật ngữ này được sử dụng rộngrãi
Khái niệm máy tự động xuất hiện từ lâu với những viễn tưởng về người máytrong cuộc sống Ngay sau chiến tranh thế giới lần thứ hai, nhiều công trìnhđược bắt đầu tại các phòng thí nghiệm OakRidge và Argome để phát triểncác máy cơ khí được điều khiển từ xa nhằm phục vụ trong các phòng thínghiệm về vật liệu phóng xạ Các cánh tay này được thiết kết mô phỏng mộtcách chính xác sự chuyển động của bàn tay và cánh tay con người
Trong giữa những năm 1950, bên cạnh các cánh tay cơ khí đó đã xuấthiện các cánh tay thuỷ lực và điện từ Cũng trong những năm này, GeorgeC.Devol đã thiết kế một thiết bị có tên là thiết bị vận chuyền có khớp nốiđược lập trình (programmed artculated transfer device) Đây là một cánh taymáy mà hoạt động của nó có thể được lập trình thực hiện một chuỗi các bướcchuyển động được xác định trong các câu lệnh trong chương trình Phát triển
xa hơn ý tưởng trên, Devol và Joseph F.Engelberger đã dẫn đường cho cácrobot công nghiệp đầu tiên được giới thiệu năm 1959 ở công ty Unimation.Thiết bị này sử dụng máy tính liên kết với tay máy nhằm dạy cho nó thựchiện các công việc khác nhau một cách tự động
Khi robot được lập trình đã tạo một sự kỳ lạ và tạo ra sức mạnh trong sảnxuất, vào năm 1960 như một sự tất yếu, sự linh hoạt của hệ thống robot đượcnâng cao đáng kể thông qua hệ thống phản hồi từ các sensor Tiếp đóH.A.Ernst đã công bố sự ra đời và phát triển của bàn tay cơ khí được điềukhiển bằng máy tính sử dụng các sensor xúc giác Đây là sự xuất hiện đầutiên về robot có khả năng thích ứng với môi trường
Vào cuối những năm 1960, Mc Carthy cùng bạn đồng nghiệp đã công bố sựphát triển của máy tính cùng với camera vô tuyến và microphone Năm 1968Pieper đã nghiên cứu những vấn đề động học trong điều khiền robot bằngmáy tính, trong khi đó năm 1971 Kanh và Roth đã phân tích về động lực học
và giới hạn điều khiển tay máy
Trong suốt những năm 1970, một số lượng lớn các công trình nghiêncứu đã tập trung vào việc sử dụng các sensor ngoại để tăng sự tiện lợi và linhhoạt cho robot Vào thời gian này công ty máy tính IBM đã chế tạo ra loại
Trang 8robot có các sensor xúc giác và sensor lực để lắp ráp các máy in gồm 20 cụmchi tiết
Một lĩnh vực được nhiều phòng thí nghiệm quan tâm là robot tự hành, robot
di động Nhiều công trình nghiên cứu đã thiết kế, xây dựng tạo ra các robot
tự hành bắt chước chân người hoặc súc vật
Trong những thập kỷ 80 - 90 do sự phát triển mạnh mẽ của khoa học kỹthuật, đặc biệt trong lĩnh vực kỹ thuật vi xử lý và công nghệ thông tin, sốlượng robot đã gia tăng, giá thành giảm đi rõ rệt, tính năng có nhiều bướctiến vượt bậc
Ngày nay, chuyên ngành khoa học robot (robotics) đã trở thành một lĩnhvực rộng trong khoa học, bao gồm việc giải quyết các vấn đề về cấu trúc cơcấu động học, động lực học, lập trình quỹ đạo, cảm biến tín hiệu, điều khiểnchuyển động…
2.2 Giới thiệu Robot chân rết
2.2.1 Định nghĩa
Robot chân rết ( robot phỏng sinh) được định nghĩa là một loại robot
có khả năng tự di chuyển tự vận động ( có thể lập trình lại được) hoặc đượcđiều khiển từ xa để thực hiện thành công một công việc được giao
Môi trường hoạt động của robot phỏng sinh có thể là đất, nước, không khí,không gian vũ trụ hay tổng hợp giữa chúng Địa hình bề mặt mà robot dichuyển có thể là bằng phẳng hoặc thay đổi, lồi lõm
2.2.2 Phân loại
Có rất nhiều loại Robot phỏng sinh, những loại đó khác nhau có thể
về cách điều khiển, về môi trường hoạt động, về cấu trúc cơ khí… Một sốRobot phỏng sinh như:
a Robot có chân
Robot có chân (Walking robots hoặc Walker) là dạng đặc biệt củaRobot phỏng sinh Sự di chuyển của nó được thực hiện bởi sự phối hợpchuyển động của các chân Sự di chuyển này có thể bắt chước từ loài người
và một số loài động vật Một số đặc điểm của Walking robots:
– Di chuyển được trên địa hình ghồ ghề, leo trèo cầu thang…
– Có nhiều cách thiết kế tùy thuộc vào số chân
– Cần hai hay nhiều động cơ cho mỗi chân
– Càng nhiều chân thì càng khó chế tạo, nhưng điều khiển lại dễ dànghơn
Trang 9độ, vĩ độ của robot đang bay Một số đặc điểm của robot:
– Chế tạo khó, yêu cầu chính xác cao
– Sử dụng điều khiển từ xa
– Dùng để thám hiểm, thăm dò từ trên không các nơi có khí độc, các vụcháy nổ, nhiễm phóng xạ…
Hình 2.2 Robot chim
c Robot dưới nước
Robot dưới nước là loại robot làm việc ở môi trường nước, môi
trường mà các thiết bị mạch điều khiển không hoạt động được, nên điều quantrọng của robot loại này là lớp bên ngoài phải kín để cho nước không thể vàophá hỏng các linh kiện bên trong
Trang 10Một số đặc điểm của Robot loại này:
– Chế tạo cơ khí rất khó, yêu cầu độ chính xác cao, đặc biệt lớp ngoài phải kín để tránh nước vào
– Điều khiển dùng thiết bị không dây như sóng vô tuyến…
– Loại này có nhiều ứng dụng như thám hiểm các vùng biển, sửa chữa các thiết bị dưới nước, dùng trong các lĩnh vực quân sự…
Hình 2.3 Robot cá đầu tiên tại Việt Nam
2.3 Thành phần chính của Robot chân rết
2.3.1 Thành phần chính
Thành phần của Robot chân rết gồm có:
– Phần cơ khí: Khung Robot, động cơ, chân
– Phần điện – điện tử: Bộ xử lí trung tâm, mạch điều khiển, hiển thị,mạch công suất
– Phần giao tiếp và truyền thông: Truyền thông nối tiếp, Modul RF,camera IP
2.3.2 Phần điện – điện tử
Vi điều khiển Atmega 8
Atmega8 là bộ vi điều khiển CMOS 8 bit tiêu thụ điện năng thấp dựatrên kiến trúc RISC (Reduced Intruction Set Computer) Vào ra Analog –digital và ngược lại Với công nghệ này cho phép các lệnh thực thi chỉ trongmột chu kì xung nhịp, vì thế tốc độ xử lý dữ liệu có thể đạt đến 1 triệu lệnhtrên giây ở tần số 1 Mhz Vi điều khiển này cho phép người thiết kế có thểtối ưu hoá chế độ độ tiêu thụ năng lượng mà vẫn đảm bảo tốc độ xử lí
Trang 11Hình 2.4: Vi điều khiển Atmega8
– 32 x 8 thanh ghi làm việc đa dụng
– Tốc độ xử lí nhanh, lên tới 16MIPS
– Có 8Kbyte bộ nhớ flash có thể xóa lập trình được và có thể ghi xóa
– Nguồn nuôi từ 4.5 đến 5.5V, làm việc tiêu thụ dòng 3.6mA
– Sử dụng mạch dao động ngoài từ 0 đến 16 Mhz Ngoài ra chípAtmega8 còn có bộ xung nội bên trong có thể lập trình chế độ xungnhịp
Trang 12Khi sử dụng vi điều khiển Atmega8, có rất nhiều phần mềm được dùng đểlập trình bằng nhiều ngôn ngữ khác nhau đó là: Trình dịch Assembly nhưAVR studio của Atmel, Trình dịch C như win AVR, CodeVisionAVR C,ICCAVR C - CMPPILER của GNU… Trình dịch C đã được nhiều ngườidùng và đánh giá tương đối mạnh, dễ tiếp cận đối với những người bắt đầutìm hiểu AVR, đó là trình dịch CodeVisionAVR C Phần mềm này hỗ trợnhiều ứng dụng và có nhiều hàm có sẵn nên việc lập trình tốt hơn.
IC điều khiển động cơ L298
Do Robot chân rết trong đề tài nhỏ, động cơ công suất không cao nênphần công suất của động cơ có thể dùng IC cầu L298
IC L298 là mạch tích hợp đơn chip có kiểu vỏ công suất 15 chân(multiwatt 15) và PowerSO20 (linh kiện dán công suất) Là IC mạch cầu đôi
có khả năng hoạt động ở điện thế cao 46V, dòng cao 2A Nó được thiết kếtương thích chuẩn TTL Nó có 2 chân enable để cho phép/không cho phép
IC hoạt động, độc lập với các chân tín hiệu vào Tính năng này cho phépkiểm soát sự cố quá dòng, quá tải hay các sự cố mất an toàn khi mạchDriver chạy Cực phát (emitter) của transistor dưới của mỗi mạch cầu đượcnối với nhau và nối ra chân ngoài để nối với điện trở cảm ứng dòng khi cần
Nó có thêm một chân cấp nguồn giúp mạch logic có thể hoạt động ở điện thểthấp hơn
Hình 2.5 Sơ đồ chân IC L298 Bảng 2.1: Chức năng các chân
Số
1;15 Sense A; Nối chân này qua điện trở cảm ứng dòng xuống
Trang 13sense B GND để điều khiển dòng tải
Out 2
Ngõ ra cầu A, dòng của tải mắc giữa hai chân này
được quy định bởi chân 1
4 VS Chân cấp nguồn cho tầng công suất, cần có một tụ
điện không cảm kháng 100nF nối giữa chân này và
chân GND5;7 Input 1;
Input 2 Chân ngõ vào của cầu A tương thích chuẩn TTL6;11 Enable A;
Enable B Chân ngõ vào enable (cho phép) tương thích chuẩnTTL Mức thấp ở chân này sẽ cấm (disable) ngõ ra
cầu A (đối với chân enable A) và/hoặc cầu B (đối
với chân enable B)
9 VSS Chân cấp nguồn cho khối logic, cần có tụ điện
100nF nối giữa chân này với chân GND10;12 Input 3;
Ngõ ra của cầu B, dòng của tải mắc giữa hai chân
này được quy đinh bởi chân 15
2.3.3 Phần giao tiếp và truyền thông
Truyền thông nối tiếp
Để xây dựng một mạch điều khiển cho Robot chân rết là rất phức tạp, cần
sử dụng nhiều vi điều khiển (hoặc vi điều khiển với máy tính) kết nối vớinhau Trong quá trình làm việc các vi điều khiển cần trao đổi dữ liệu chonhau, ví dụ trường hợp Master truyền lệnh cho Slave hay Slave phản hồi tínhiệu về cho Master… Giả sử các dữ liệu trao đổi có chiều dài 8bits, khi đó,bạn có thể nghĩ đến cách nối đơn giản nhất là kết nối 1 PORT (8bits) của mỗi
vi điều khiển với nhau, mỗi line trên trên PORT có nhiệm vụ truyền/nhận 1bit dữ liệu Đây là cách giao tiếp song song, đây là cách đơn giản nhất vì dữliệu được xuất và nhận trực tiếp không qua bất kì một giải thuật biến đổi nàonên tốc độc cũng rất nhanh Tuy nhiên, nhược điểm của cách truyền này là sốđường truyền quá nhiều, dữ liệu càng lớn thì số đường truyền càng nhiều.Truyền thông nối tiếp sẽ giải quyết vấn đề này, trong truyền thông nối tiếp,
dữ liệu được truyền từng bit trên một (hoặc một vài) đường truyền Vì vậy,
Trang 14cho dù dữ liệu của bạn có lớn đến đâu bạn cũng chỉ dùng rất ít đường truyền.Hình dưới mô tả sự so sánh giữa hai cách truyền song song và nối tiếp trongviệc truyền con số thập phân 187.
Hình 2.6 Truyền 8 bit theo phương pháp song song và nối tiếp
Một hạn chế rất dễ nhận thấy khi truyền nối tiếp so với song song là tốc
độ truyền và độ chính xác của dữ liệu khi truyền nhận Vì dữ liệu cần phảichia nhỏ thành từng bít khi truyền/nhận, tốc độ sẽ bị giảm Mặt khác, để đảmbảo tính chính xác của dữ liệu, bộ truyền và bộ nhận cần có những tiêu chuẩnnhất định
Truyền thông nối tiếp có hai dạng, đó là truyên thông nối tiếp đồng bộ vàtruyền thông nối tiếp không đồng bộ Khái niệm “đồng bộ” chỉ sự “báotrước” trong quá trình truyền.Ví dụ thiết bị 1 kết nối với thiết bị 2 bởi 2đường, một đường dữ liệu và một đường xung nhịp Cứ mỗi lần thiết bị 1muốn gửi 1 bit dữ liệu, thiết bị 1 điều khiển đường xung nhịp chuyển từ mứcthấp sang mức cao báo cho thiết bị 2 sẵn sàng nhận 1 bit Bằng cách báotrước này tất cả các bit dữ liệu có thể truyền nhận dễ dàng và ít xảy ra lỗi.Tuy nhiên, cách truyền này cần ít nhất 2 đường truyền cho một quá trình.Giao tiếp giữa máy tính và bàn phím (trừ bàn phím usb) là một ví dụ vềtruyền thông nối tiếp đồng bộ
Khác với truyền thông đồng bộ, truyền thông không đồng bộ chỉ cần mộtđường truyền cho một quá trình Khung dữ liệu đã được chuẩn hóa bởi cácthiết bị nên không cần đường xung nhịp báo trước dữ liệu đến Ví dụ 2 thiết
bị đang giao tiếp với nhau theo phương pháp này, chúng đã được thỏa thuậnvới nhau rằng cứ 1ms có thì sẽ có một bit truyền đến, như thế thiết bị nhậnchỉ kiểm tra và đọc đường truyền mỗi ms để đọc các bit dữ liệu và sau đó kếthợp chúng lại thành dữ liệu có ý nghĩa Truyền thông nối tiếp không đồng bộchính vì vậy hiệu quả và được dùng nhiều hơn truyền thông nối tiếp đồng bộ(cần ít line hơn) Các khái niệm quan trọng trong phương pháp truyền thôngnày:
+ Baud rate (Tốc độ baud):
Lấy ví dụ về việc truyền 1 bit trong 1ms, ta thấy rằng để việc truyền vànhận không đồng bộ xảy ra thành công thì các thiết bị tham gia phải “thống
Trang 15nhất” nhau về khoảng thời dành cho 1 bite truyền, hay nói cách khác tốc độtruyền phải được cài đặt như nhau trước, tốc độ này gọi là tốc độ Baud Theođịnh nghĩa, tốc độ baud là số bit truyền trong 1 giây Ví dụ nếu tốc độ baudđược đặt là 19200 thì thời gian dành cho 1 bit truyền là 1/19200 ~ 52.083us.+ Frame (Khung truyền):
Do truyền thông nối tiếp mà nhất là nối tiếp không đồng bộ rất dễ mấthoặc sai lệch dữ liệu, quá trình truyền thông theo kiểu này phải tuân theo một
số quy cách nhất định Bên cạnh tốc độ baud, khung truyền là một yếu tốcquan trọng tạo nên sự thành công khi truyền và nhận Khung truyền bao gồmcác quy định về số bit trong mỗi lần truyền, các bit “báo” như bit Start và bitStop, các bit kiểm tra như Parity, ngoài ra số lượng các bit trong một data cũng được quy định bởi khung truyền Hình 1 là một ví dụ của một khungtruyền theo UART, khung truyền này được bắt đầu bằng một start bit, tiếptheo là 8 bit data, sau đó là 1 bit parity dùng kiểm tra dữ liệu và cuối cùng là
áp của bit start là ngược lại) start là bit bắt buộc phải có trong khung truyền.+ Data:
Data hay dữ liệu cần truyền là thông tin chính mà chúng ta cần gởi vànhận Data không nhất thiết phải là gói 8 bit, với AVR bạn có thể quy định
số lượng bit của data là 5, 6, 7, 8 hoặc 9 (tương tự cho hầu hết các thiết bị hỗtrợ UART khác) Trong truyền thông nối tiếp UART, bit có ảnh hưởng nhỏnhất (LSB – Least Significant Bit, bit bên phải) của data sẽ được truyềntrước và cuối cùng là bit có ảnh hưởng lớn nhất (MSB – Most SignificantBit, bit bên trái)
+ Parity bit:
Parity là bit dùng kiểm tra dữ liệu truyền đúng không (một cách tươngđối) Có 2 loại parity là parity chẵn (even parity) và parity lẻ (odd parity).Parity chẵn nghĩa là số lượng số 1 trong dữ liệu bao gồm bit parity luôn là sốchẵn Ngược lại tổng số lượng các số 1 trong parity lẻ luôn là số lẻ Ví dụ,nếu dữ liệu của bạn là 10111011 nhị phân, có tất cả 6 số 1 trong dữ liệu này,nếu parity chẵn được dùng, bit parity sẽ mang giá trị 0 để đảm bảo tổng các
số 1 là số chẵn (6 số 1) Nếu parity lẻ được yêu cầu thì giá trị của parity bit là
1 Hình 1 mô tả ví dụ này với parity chẵn được sử dụng Parity bit khôngphải là bit bắt buộc và vì thế chúng ta có thể loại bit này khỏi khung truyền
Trang 16+ Stop bit:
Stop bits là một hoặc các bit báo cho thiết bị nhận rằng một gói dữ liệu đãđược gởi xong Sau khi nhận được stop bits, thiết bị nhận sẽ tiến hành kiểmtra khung truyền để đảm bảo tính chính xác của dữ liệu Stop bits là các bitsbắt buộc xuất hiện trong khung truyền, trong AVR USART có thể là 1 hoặc
2 bits (Trong các thiết bị khác Stop bits có thể là 2.5 bits). Trong ví dụ ởhình 1, có 2 stop bits được dùng cho khung truyền.Giá trị của stop bit luôn làgiá trị nghỉ (Idle) và là ngược với giá trị của start bit, giá trị stop bit trongAVR luôn là mức cao (5V)
Giao tiếp không dây RF
Truyền nhận dữ liệu không dây RF không phải là một vấn đề mới,nhưng việc hiểu và phân tích kĩ sẽ giúp việc đơn giản hóa và tăng hiệu quả
sử dụng trong các thiết kế ứng dụng không dây với vi điều khiển
Việc xử lí nhiễu là rất quan trọng đối với mọi chuẩn giao tiếp, giao tiếpkhông dây RF cũng vậy Chính vì lí dó đó, việc mã hóa/giải mã dữ liệuchỗng nhiễu là việc không thể thiếu khi muốn truyền nhận qua RF Mã hóa
dữ liệu có thể làm bằng nhiều cách: sử dụng các IC mã hóa – giải mã, lậptrình bằng vi điều khiển, mã hóa trực tiếp với PC …
Có rất nhiều dạng mã hóa khác nhau như: NRZL (Non Return to ZeroLevel), NRZI ( Non Return to Zero Inverted), Manchester … Hình dưới làdạng mã hóa Manchester Phương pháp mã hóa Manchester theo nguyên tắcsau:
– Mỗi bit sẽ có một khoảng thời gian truyền cố định
– Dữ liệu được xác định vào thời khoảng giữa của bit
– Mức 1 biểu diễn Low-to-High, mức 0 biểu diễn High-to-Low ( hoặcngược lại tùy theo quy ước đảo mã Manchester)
Hình 2.7 Mã hóa theo Manchester
Trang 17Với một chuẩn giao tiếp bất kì, vì tận cùng bản chất của dữ liệu là baogồm các bit 0 và 1, bên phát dữ liệu cần có một cách thức để gửi các bit 0 và
1 để gửi cho bên nhận Một tín hiệu xoay chiều hay một chiều tự nó sẽ khôngthực hiện tác vụ này Tuy nhiên, nếu một tín hiệu có thay đổi và dao động,
dù chỉ một ít, sự thay đổi này sẽ giúp phân biệt bit 0 và bit 1 Lúc đó, dữ liệucần truyền sẽ có thể gửi và nhận thành công dựa vào chính sự thay đổi củatín hiệu Dạng tín hiệu đã điều chế này còn được gọi là sóng mang (carriersignal) Có ba thành phần của dạng sóng có thể thay đổi để tạo ra sóng mang,
đó là biên độ, tần số và pha Tất cả các dạng truyền thông dùng sóng vôtuyến đều dùng vài dạng điều chế để truyền dữ liệu Để mã hóa dữ liệu vàotrong một tín hiệu gửi qua sóng AM/FM, điện thoại di động, truyền hình vệtinh, ta phải thực hiện một vài kiểu điều chế trong sóng vô tuyến đangtruyền
Biến điệu hay điều chế là quá trình chuyển đổi phổ tần của tín hiệu cầntruyền đến một vùng phổ tần khác bằng cách dùng một sóng mang để chuyênchở tín hiệu cần truyền đi Mục đích của việc làm này là chọn một phổ tầnthích hợp cho việc truyền thông tin, với các tần số sóng mang khác nhaungười ta có thể truyền nhiều tín hiệu có cùng phổ tần trên các kênh truyềnkhác nhau của cùng một đường truyền
Một cách tổng quát, phương pháp điều chế là dùng tín hiệu cần truyền làmthay đổi một thông số nào đó của sóng mang (biên độ, tần số, pha ) Tùytheo thông số được lựa chọn mà ta có các phương pháp điều chế khác nhau:điều chế biên độ (AM), điều chế tần số (FM), điều chế pha ΦM, điều chếxung PM…
– Điều biên ( Điều chế AM )
Điều biên thay đổi biên độ/ độ cao của tín hiệu để mô tả dữ liệu nhịphân Điều biên dùng kỹ thuật trạng thái hiện hàng, trong đó một mức biên
độ được dùng để tượng trưng mức 0 và một mức được dùng để tượng trưngmức 1 Hình bên dưới mô tả làm thế nào một dạng sóng có thể điều chế một
mã ASCII ký tự K dùng phương pháp điều biên Biên độ lớn tượng trưng chobit 1, trong khi biên độ nhỏ tượng trưng cho mức 0 Chính biên độ của sóng
sẽ xác định dữ liệu đang được truyền Bên máy nhận, đầu tiên máy nhận sẽchia tín hiệu nhận được ra thành những khoảng thời gian được gọi là thờigian lấy mẫu Máy nhận sau đó sẽ kiểm tra sóng để tìm ra biên độ Tùy thuộcvào giá trị biên độ của sóng, máy nhận sẽ xác định giá trị nhị phân đang đượctruyền Như bạn cũng có thể biết, các tín hiệu không dây thì có thể khó dựđoán và cũng có thể bị nhiễu từ nhiều nguồn Khi nhiễu xảy ra, nó thườngảnh hưởng đến biên độ của tín hiệu vì khi có một sự thay đổi trong biên độ
có thể làm cho máy nhận diễn dịch sai giá trị dữ liệu, kỹ thuật này phải đượcdùng một cách cẩn thận
Trang 18Hình 2.8 điều chế một mã ASCII ký tự K dùng phương pháp điều biên
– Điều tần ( Điều chế FM )
Điều tần thay đổi tần số tín hiệu để mô tả dữ liệu nhị phân Điều biêndùng kỹ thuật trạng thái hiện hành, trong đó một mức tần số có thể tượngtrưng cho bit 0 và một tần số khác tượng trưng cho bit 1 Sự thay đổi tần số
sẽ xác định dữ liệu đang được truyền Bên máy nhận lấy mẫu của tín hiệu, nó
sẽ xác định tần số của sóng, và tuỳ thuộc vào giá trị tần số, máy nhận sẽ xácđịnh giá trị nhị phân Hình dưới đây sẽ mô tả làm thế nào một dạng sóng cóthể mô tả ký tự K của bảng mã ASCII dùng kỹ thuật điều tần Mức tần sốnhanh hơn được diễn dịch như mức 1 và mức tần số thấp hơn được diễn tảnhư mức 0
Trong các chuẩn 802.11 ban đầu, kỹ thuật điều tần FSK được dùng Khi yêucầu truyền thông nhanh hơn, kỹ thuật FSK sẽ đòi hỏi nhiều kỹ thuật đắt hơn
để hỗ trợ tốc độ nhanh hơn Điều này làm cho nó không còn thực tế
Trang 19Hình 2.9 điều chế một mã ASCII ký tự K dùng phương pháp điều tần
– Điều pha
Kỹ thuật này sẽ thay đổi pha của tín hiệu để mô tả dữ liệu nhị phân.Điều pha dùng kỹ thuật thay đổi trạng thái, trong đó một pha dùng để mô tảbit 0 và một pha khác dùng để mô tả mức 1 Sự thay đổi trạng thái của pha sẽxác định dữ liệu đang được truyền Khi máy nhận lấy mẫu tín hiệu, nó sẽ xácđịnh pha và trạng thái của bit Hình dưới đây mô tả làm thế nào một dạngsóng có thể mô tả ký tự K dùng kỹ thuật điều pha Pha thay đổi đầu chu kỳdùng để mô tả giá trị nhị phân là 1 Nếu pha không thay đổi ở đầu chu kỳ thì
mô tả giá trị 0 Điều pha dùng nhiều trong các chuẩn 802.11 Một cách cụthể, bên máy nhận sẽ lấy mẫu tín hiệu và so sánh pha của mẫu hiện hành vớipha trước đó và xác định sự khác nhau Sự khác nhau trong pha (lệch pha) sẽđược dùng để xác định giá trị bit Các phiên bản cao cấp của điều pha có thể
mã hóa nhiều bit Thay vì dùng hai pha để xác định giá trị nhị phân, bốn pha
có thể được dùng Mỗi pha trong bộ bốn này có thể dùng để mô tả hai giá trịnhị phân (00,01,10,11) thay vì chỉ 1 (0 hoặc 1), như vậy sẽ giúp ngắn thờigian truyền
Trang 20Hình 2.10 điều chế một mã ASCII ký tự K dùng phương pháp điều pha.
Module thu phát DRF7020D13
Đây là một Module thu phát 2 chiều nhỏ gọn, rất tiện dụng, có thểtruyền dữ liệu với khoảng cách max 700m Truyền với khoảng cách xa nhưvậy nhưng khả năng chống nhiễu của nó rất tốt Chip điều khiển Module nàytheo chuẩn RS232 rất đơn giản
Hình 2.11 Module thu phát DRF7020D13
DRF7020D13 là một loại Module thu phát tích hợp cao, tiêu thụ điệnnăng thấp dựa trên IC ADF7020 RF Đổi mới công nghệ mã hóa EDAC (đanxen phát hiện lỗi và sửa lỗi) được sử dụng để đảm bảo việc truyện nhận dữliệu và khoảng cách xa hơn so với công nghệ mã hóa thường
Trang 21Module này bình thường giao tiếp với máy tính qua cổng COM, nhưng nhưvậy sẽ không tiện cho việc kết nối, do hiện nay có nhiều loại máy tính không
có cổng COM Tuy nhiên, cổng USB thì bất kì PC nào cũng có, nên nhóm đãlàm một bộ chuyển đổi từ cổng COM sang USB để thuận lợi cho việc giaotiếp và điều khiển
Một số tính năng nổi bật của Module:
– Sử dụng phương thức điều tần
– Dải tần 418MHz ~ 455MHz
– Tốc độ truyền nhận dữ liệu FSK: 1.2, 2.4, 4.8, 9.6, 19.2, 38.4, 57.6Kbps
Bảng 2.4: Chức năng các chân module thu phát DRF7020D13
Bảng 2.5: Thông số giới hạn
Trang 22Tên Chức năng Min Max Đơn vị
Trang 23Giúp cho những nhà quản lí vừa kiểm soát công việc một cách chặt chẽhơn, vừa tiết kiệm được chi phí thuê nhân viên bảo vệ, mà lại làm cho hìnhảnh của doanh nghiệp được chuyên nghiệp, hiện đại hơn.
Nếu khi xẩy ra bất cứ một vấn đề hay sự cố gì đều được hệ thống Camera
an ninh ghi lại, từ đó làm tư liệu bằng chứng để tìm ra được nguyên nhân xẩy
Camera IP mà nhóm dùng trong đề tài là Model IPcam541 Đây là camera
an ninh giám sát từ xa qua mạng với khả năng điều khiển xoay 4 chiều thôngminh qua trình duyệt đi kèm
Hình 2.13 Model IPcam541
Các thông số của camera:
+ Cảm biến hình ảnh: 1/4“ CMOS sensor
+ Ống kính: f = 4.5mm, F=2.0
+ LED hồng ngoại: Tự động nhận biết trời tối
Trang 24Thiết bị thu nhận ảnh
Phân đoạn ảnh
+ Hỗ trợ các hệ điều hành: Microsoft Windows 98/2000/XP/Vista
+ Trình duyệt: Internet Explorer6.0 and Above or Compatible Browser,Firefox etc
2.3.4 Giới thiệu MATLAB
Matlab không chỉ là phần mềm mô phỏng hệ thống mà nó còn là công cụ tính toán , phần mềm lập trình mạnh Nó cung cấp nhiều toolbox để giải quyết các bài toán đồ họa , điều khiển , mô phỏng …
Image processing toolbox với thư viên lớn cung cấp nhiều hàm , các ví dụ demo phục vụ xử lý ảnh
Ngoài ra để thu nhận và nhận dạng thì kết hợp 2 toolbox là image acquisition toolbox và neural network toolbox
2.4 Tổng quan về xử lý ảnh