Báo cáo tốt nghiệp đề tài thực hiện việc vẽ lại bức ảnh chụp được từ webcam thông qua giao diện matlab và vi điều khiển

92 298 0
Báo cáo tốt nghiệp đề tài thực hiện việc vẽ lại bức ảnh chụp được từ webcam thông qua giao diện matlab và vi điều khiển

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương I. TỔNG QUAN VỀ ĐỀ TÀI 1.1 Tầm quan trọng của đề tài. Động cơ bước và các ứng dụng liên quan đến động cơ bước ngày nay trở nên quá quen thuộc đối với các sinh viên khối kỹ thuật, nhất là đối với những người đam mê chế tạo máy móc, Robot…. Nguyên nhân là việc điều khiển chúng khá đơn giản tuy nhiên mang lại một sự chính xác cao, vì vậy nên việc lựa chọn động cơ bước cho các ứng dụng trở nên phổ biến. Nhất là các ứng dụng có liên quan tới điều khiển vị trí. Đối với các máy móc phức tạp đòi hỏi sự chính xác của cả cơ khí và điện tử, mà cụ thể hơn là các ứng dụng có liên quan đến động cơ, thì việc lựa chọn động cơ bước là một nhu cầu thiết yếu. Bên cạnh đó thì còn có động cơ Servo DC, tuy nhiên khuyết điểm lớn nhất của loại động cơ này là về khó điều khiển chính xác về mặt vị trí nhưng về mặt tốc độ và công suất thì hơn hẳn động cơ bước. Nhằm mục đích tìm hiểu và cũng giúp các bạn hiểu nhiều hơn về động cơ bước và cách điều khiển chúng thông qua việc nhúng chúng vào một ứng dụng cụ thể có liên quan tới vị trí. Chẳng hạn như sử dụng chúng trong máy in, máy photocopy, máy CNC… và một ứng dụng thực tế nữa là “vẽ ảnh”, vì vậy chúng tôi đã lựu chọn đề tài thực hiện việc vẽ lại bức ảnh chụp được từ Webcam thông qua giao diện matlab và vi điều khiển. Thực hiện ứng dụng nhúng này, chúng ta có thể biết nhiều hơn về Matlab và xử lý ảnh, vi xử lý, truyền thông giữa vi xử lý và Matlab, về động cơ bước, xây dựng mô hình cơ khí…Tóm lại ứng dụng điều khiển động cơ bước thông qua một giao diện điều khiển từ máy tính vào các ứng dụng đòi hỏi độ chính xác cao của động cơ là một đề tài cần phải được phát triển trong tương lai. 1.2 Cơ sở lý luận. 1.2.1 Đối tượng nghiên cứu. - Mạch điều khiển động cớ bước. - Truyền dữ liệu thông qua RS232 giữa vi xử lý và Matlab. - Các thuật toán xử lý ảnh trong matlab. 1.2.2 Dàn ý nghiên cứu. - Lý thuyết về ảnh và xử lý ảnh trong Matlab. - Lý thuyết về động cơ bước. - Sơ lược về vi xử lý (P89V51Rx2). - Tóm tắt sơ lựơc về nguyên lý hoạt động của từng khối (nêu ra các khối, chức năng của từng khối ). - Cơ sở tính toán thiết kế. - Sơ đồ khối, nguyên lý hoạt động của các mạch. - Tính toán, thiết kế, thi công. 1.3 Phương pháp, phương tiện nghiên cứu 1.3.1 Phương pháp. Tìm hiểu về động cơ bước và cách điều khiển chúng, từ đó thiết kế sơ đồ khối .Sau đó thiết kế từng khối thành sơ đồ mạch điện, cuối cùng ghép chúng lại thành sơ đồ mạch điện cụ thể. Khâu cuối cùng vẽ mạch in và thi công mạch. Đồng thời tìm hiểu xử lý ảnh trong matlab và phương pháp truyền dữ liệu qua lại giữa matlab và vi xử lý để có thể lập trình điều khiển. Ngoài ra còn phải lập trình vi xử lý để có các tín hiệu điều khiển các bộ phận chấp hành một cách chính xác và ổn định. 1.3.2 Phương tiện. Thông qua các tài liệu nói về động cơ bước, các sách viết về truyền động điện, tự động khống chế truyền động điện, điện tử công suất, kỹ thuật xung, kỹ thuật số, lập trình vi điều khiển 8051, lập trình matlab và quan trọng nhất là tài liệu về xử lý ảnh trong matlab. Chương II. CƠ SỞ LÝ THUYẾT 2.1 Ảnh và xử lý ảnh trong Matlab 2.1.1 Ảnh và thu nhận ảnh: Thông qua các thiết bị ngoại vi thu nhận ảnh như Camera, Webcam…mà hình ảnh bên ngoài được số hoá, lưu trữ và hiển thị trên màn hình. Một bức ảnh thu vào là tập hợp của 3 ma trận màu cơ bản (RGB) R:red; G:Green; B:Blue. Mức xám của mỗi màu tại một toạ độ của mỗi ma trận là khác nhau tạo nên những màu khác nhau. Giá trị của mức xám của từng màu có thể thay đổi từ 0 đến 255 (ảnh 8 bit). Vì vậy mà chúng ta có thể biểu diễn tất cả các màu chỉ thông qua 3 ma trận này. Ảnh đen trắng là một ma trận ảnh 2 chiều, giá trị tại mỗi tọa độ chỉ có 2 mức 0 và 1 với 0:màu đen ; 1: màu trắng. Nếu như giá trị mức xám 0 -> 255 thì đây không còn được gọi là ảnh trắng đen nữa mà được gọi là ảnh xám. Mỗi toạ độ của ma trận này được gọi là 1 điểm ảnh (pixel). Kích thước bức ảnh thu được được gọi là độ phân giải, độ phân giải này càng lớn nghĩa là kích thước bức ảnh càng lớn. Ví dụ: Một bức ảnh với độ phân giải 240x320 nghĩa là bức ảnh này có kích thước 240 điểm ảnh theo chiều dọc và 320 điểm ảnh theo chiều ngang. Chất lượng bức ảnh thu được tùy thuộc nhiều vào các thiết bị thu ảnh, giải thích hiện tượng ảnh bị mờ, ảnh có độ phân giải thấp, hay là các vết nhiễu trong bức ảnh….nguyên nhân là do Camera không đảm bảo chất lượng, ống kính bị bụi. Điều này làm cho việc xử lý bức ảnh thu được gặp khó khăn, kết quả sau khi xử lý thường không chính xác hoặc có sai lệch lớn. Vì vậy lựa chọn sử dụng một thiết bị thu nhận ảnh có chất lượng ổn định là một trong những bước quan trọng trong việc xử lý ảnh. 2.1.2 Xử lý ảnh thu được qua Matlab: 2.1.2.1 MatLab. Ngôn ngữ lập trình Matlab ngày càng trở nên phổ biến đối với tất cả dân kỹ thuật. Đây dường như là một ngôn ngữ hỗ trợ hầu hết các công cụ phục vụ cho nhiều ngành khác nhau, từ kinh tế cho đến kỹ thuật. Đặc biệt Matlab mạnh về công cụ xử lý ảnh hơn bất kỳ ngôn ngữ lập trình nào khác, lệnh Matlab được hình thành chủ yếu dựa vào tổng hợp các tập lệnh của các ngôn ngữ khác như C,C+ +,VB Cấu trúc các hàm và tập lệnh khá đơn giản, dể hiểu, đặc biệt Matlab hổ trợ mạnh công cụ Help, các ví dụ minh họa trực quan giúp người dùng có thể dể dàng đọc và thực hiện. 2.1.2.2 Xử lý ảnh bằng matlab. Ảnh sau khi thu được là một bức ảnh ở dạng thô cần phải được xử lý thông qua một vài bộ lọc, nghĩa là dựa vào các thuật toán để biến đổi bức ảnh này sang bức ảnh mong muốn khác. Bước thực hiện này là một trong những bước quan trọng trong kỹ thuật xử lý ảnh, nó quyết định đến mức độ thành công của dự án. Xử lý bức ảnh thu được phải thông qua các công việc sau: Một vài hàm cơ bản trong công cụ xử lý ảnh của Matlab để thực hiện các công việc trên: Số thứ tự Tên hàm Chức năng 1 videoinput Kết nối với Camera 2 preview Xem hình ảnh đang thu được từ Camera 3 getsnapshot Chụp hình ảnh từ Camera 8 imshow Hiển thị bức ảnh trên màn hình 4 imrezise Thay đổi độ phân giải của hình ảnh 5 im2bw Chuyển ảnh mức xám sang ảnh đen trắng 6 imcomplement Hoán đổi bức ảnh trắng đen 7 bwmorph Làm mảnh biên của bức ảnh Lấy dữ liệu bức ảnh thu được từ Camera Các thuật toán để nâng cao chất lượng ảnh Đưa ra bức ảnh sau khi xử lý Kết nối Camera Như vậy ta đã có được một bức ảnh như mong muốn, công việc còn lại là xử lý tọa độ của bức ảnh để tạo ra các dữ liệu điều khiển cho thiết bị ngoại vi, các dữ liệu này sẽ được gởi qua thiết bị thông qua chuẩn giao tiếp RS232. Tóm lại nhóm đã chọn Matlab để thực hiện đồ án có liên quan tới xử lý ảnh. Việc thu nhận và xử lý ảnh được diễn tả qua sơ đồ khối sau: Hình 2.1.2.2 Sơ đồ thực hiện xử lý ảnh thu được 2.2 Matlab và truyền thông nối tiếp RS232 2.2.1GIỚI THIỆU PHƯƠNG THỨC TRUYỀN DỮ LIỆU NỐI TIẾP. Trong truyền dữ liệu nối tiếp, nơi gửi sẽ gửi từng bit dữ liệu nối tiếp nhau trên một đường truyền. Một liên kết nối tiếp chỉ có hai thiết bị thì phải có đường dẫn dành cho mỗi chiều truyền hoặc là nó chỉ có một đường dẫn được chia sẻ bởi cả hai thiết bị với thoả thuận của hai thiết bị này. Khi mà có nhiều hơn hai thiết bị, tất cả các thiết bị này thường dùng chung một đường dẫn, thì giao thức mạng quyết định xem thiết bị nào có quyền truyền nhận dữ liệu. Việc truyền nhận dữ liệu được điều khiển bởi tín hiệu xung clock. Nơi truyền và nơi nhận dùng xung clock để quyết định khi nào gửi và khi nào nhận dữ liệu. Có hai dạng truyền dữ liệu: truyền đồng bộ và truyền bất đồng bộ, và mỗi phương thức truyền sử dụng các xung clock khác nhau. 2.2.1.1 Truyền đồng bộ nối tiếp. Trong truyền đồng bộ nối tiếp, sự đồng bộ được thực hiện bởi một xung clock được phát ra bởi một thiết bị hoặc từ một nguồn xung ngoài. Xung clock có thể có một tần số cố định hoặc có thể chốt tại những khoảng thời gian không đều. Các bit truyền đi được đồng bộ với xung clock. Nói cách khác, mỗi bit được truyền đi là Thu nhận ảnh tĩnh thông qua Webcam Tiền xử lý ảnh bức ảnh thu được (lộc nhiễu, làm trơn ảnh…) Xử lý toạ độ bức ảnh để đưa ra các dữ liệu điều khiển cho thiết bị chấp hành (động cơ của mô hình) dựa vào sự chuyển đổi của xung( như tăng hoặc giảm của sường xung). Nơi nhận dùng sự chuyển đổi xung để quyết định khi nào đọc các bit truyền tới. Trong quá trình truyền chỉ truyền data, không cần thêm tín hiệu đồng bộ vào chuỗi data nên tốc độ truyền nhanh. Nhưng phải thêm kênh thứ hai để truyền tín hiệu clock song song với kênh truyền data. Tốc độ 2400, 4800, 9600bit/s. Hình 2.2.1.1- Sơ đồ truyền đồng bộ nối tiếp. 2.2.1.2 Truyền bất đồng bộ nối tiếp. Trong truyền bất đồng bộ nối, dữ liệu không bao gồm đường xung clock, bởi vì mỗi điểm đầu cuối của liên kết đã có xung clock cho riêng từng thiết bị. Mỗi thiết bị truyền nhận sẽ cần phải có cùng một tần số xung clock hoặc chỉ khác nhau một vài % nhỏ. Mỗi byte dữ liệu truyền đi bao gồm một bit Start để đồng bộ xung clock và một hoặc hai bit Stop là tín hiệu báo kết thúc việc truyền dữ liệu. (Trong trường hợp nếu nơi nhận đòi hỏi phải có một thời gian kiểm tra dữ liệu nhận đuợc, nơi truyền sẽ kéo dài độ rộng của bít Stop ra nhiều bit, có thể là 1,5 hoặc 2). Việc truyền dữ liệu bất đồng bộ cho phép truyền ngẫu nhiên không cần truyền liên tục. Phải thêm vào trước mỗi kí tự một bit START và phía sau 1 hoặc 2 bit STOP nên tốc độ truyền chậm nhưng đơn giản và kinh tế hơn. Tốc độ 75,110, 300, 1200bit/s Hình 2.2.1.2 Sơ đồ truyền bất đồng bộ nối tiếp. 2.2.2. GIAO TIẾP VỚI MÁY TÍNH BẰNG CỔNG NỐI TIẾP. 2.2.2.1 Giới thiệu cổng COM. Cổng nối tiếp có đặc tính hoạt động song công ( thu và phát đồng thời), và bộ đệm nhận ( thu ) cho phép một kí tự được nhận và giữ trong bộ đệm trong khi đó kí tự thứ hai được thu. Nếu CPU đọc kí tự thứ nhất trước khi kí tự thứ hai được nhận đầy đủ thì dữ liệu vẫn không bị mất. Việc truyền dữ liệu qua cổng COM được tiến hành theo cách nối tiếp, nghĩa là các bit dữ liệu được truyền đi nối tiếp nhau trên một đường dẫn. Phương thức truyền dữ liệu này có khả năng dùng cho những ứng dụng có yêu cầu truyền dữ liệu trên khoảng cách lớn bởi vì các khả năng gây nhiễu là nhỏ hơn nhiều so với việc truyền dữ liệu qua cổng song song. Cổng COM không phải là một hệ thống bus cho phép dễ dàng tạo ra liên kết dưới hình thức điểm với điểm giữa hai thiết bị cần trao đổi thông tin với nhau, một thành viên thứ ba không thể tham gia vào việc trao đổi thông tin này. Trên thực tế có hai loại cổng COM ( phân loại theo số chân) loại 9 chân(DB9) và loại 25 chân(DB25), cả hai loại này đều có chung một đặc điểm .  Các chân và đường dẫn được mô tả như sau: Hình 2.2.2.1.a – Sơ đồ chân và chức năng từng chan của cổng COM Việc truyền dữ liệu xảy ra trên hai đường dẫn. Qua chân cắm TXD từ máy tính gửi dữ liệu đến Kit Vi điều khiển(VĐK) ( Các thiết bị nhận), trong khi đó các dữ liệu mà máy tính nhận được lại được gửi trên chân RXD các tín hiệu khác đóng vai trò như là tín hiệu hỗ trợ khi trao đổi thông tin vì thế không phải trong mọi trường hợp ta đều sử dụng hết các chân của nó. Trong thực tế người ta thường sử dụng cổng COM1 (DB9) cho việc truyền dữ liệu nối tiếp, các cổng COM khác được dùng vào những ứng dụng khác nhau.  Quá trình truyền nhận dữ liệu được thực hiện như sau:  Đầu dữ liệu sẵn sàng DTR: khi thiết bị đầu cuối (máy tính và VĐK) được bật thì sau khi tự kiểm tra nó gửi một tín hiệu DTR báo rằng nó sẵn sàng cho truyền thông. Nếu có trục trặc với cổng COM thì tín hiệu này không được kích hoạt. Đây là tín hiệu tích cực mức thấp và có thể được dùng để báo cho Kit VĐK (modem) biết rằng máy tính đang hoạt động và đang sẵn sàng truyền thông.  Đầu dữ liệu sẵn sàng DSR: khi DCE( data communication equipment) được bật lên và đã chạy xong chương trình tự kiểm tra thì nó đòi hỏi DSR để báo rằng đã sẵn sàng cho truyền thông. Do vậy, nó là đầu ra của DCE và là đầu vào của DTE. Đây là tín hiệu tích cực mức thấp.  Yêu cầu gửi RTS: DTE sẽ gửi tín hiệu RTS đến DCE khi nó có một byte dữ liệu cần gửi. RTS là đầu ra tích cực mức thấp.  Tín hiệu xóa để gửi CTS: DCE sẽ gửi tín hiệu này đến DTE để báo rằng nó có thể nhận dữ liệu. Tín hiệu đầu vào này tới DTE dùng để khởi động việc truyền dữ liệu.  Phát hiện tín hiệu mang dữ liệu DCD: Modem yêu cầu tín hiệu DCD báo cho DTE biết rằng đã phát hiện tín hiệu mang dữ liệu hợp lệ và rằng kết nối giữa nó có thể nhận dữ liệu.  Tốc độ truyền: còn gọi là tốc độ Bau-rate, được xác định như tổng số lần thay đổi tín hiệu trong một giây . Nếu tín hiệu truyền đi là nhị phân thì tốc độ truyền tương ứng với số Bit truyền trong một giây. Các kênh thông tin được đánh giá bằng tốc độ truyền. Nếu tín hiệu truyền đi ngoài khả năng của kênh truyền sẽ xảy ra lỗi, bên thu sẽ nhận không đúng thông tin mà bên truyền gửi.  Thiết bị được sử dụng trong truyền thông nối tiếp:UART(Universal Asynchronous Receiver Transmitter ) UART là một phần không thể thiếu trong việc điều khiển truyền thông nối tiếp. Nó có thể chuyển đổi giữa dữ liệu nối tiếp và song song. - Một chiều, UART chuyển đổi dữ liệu song song bus hệ thống ra dữ liệu nối tiếp để truyền đi. - Một chiều khác, UART chuyển đổi dữ liệu nhận được dạng dữ liệu nối tiếp thành dạng dữ liệu song song cho CPU có thể đọc vào bus hệ thống Hình 2.2.2.1.b – Sơ đồ khối của UART Nhìn vào sơ đồ khối ta có thể thấy UART gồm có 4 bộ chính : • Bộ Interrupt : điều khiển việc interrupt, lưu trữ status và khi nào có interrupt sẽ đưa dữ liệu ra chân UnINTR • Bộ điều khiển Clock UnBRG điều khiển việc sinh ra CLK từ hai dữ liệu vào là UnDLL và UnDLM • Bộ truyền dữ liệu : UnTX có hai thanh ghi : thanh ghi chứa dữ liệu và thanh ghi truyền serial ra ngoài thông qua chân TXD • Bộ nhận dữ liệu : UnRX gồm có hai thanh ghi là thanh ghi chứa dữ liệu và thanh ghi truyền serial. Dữ liệu nhận vào ở chân RXD sẽ đẩy vào thanh ghi truyền serial rồi đưa vào thanh ghi nhận dữ liệu. Trong PC, hệ điều hành và ngôn ngữ lập trình hỗ trợ cho lập trình liên kết nối tiếp mà không cần phải hiểu rõ chi tiết cấu trúc UART. Để mở liên kết, ứng dụng lựa chọn một tần số dữ liệu hoặc là thiết lập khác hoặc cho phép truyền thông tại các cổng. Để gửi 1 byte, ứng dụng ghi byte này vào bộ đệm truyền của cổng được lựa chọn, và UART gửi dữ liệu này, từng bit một, trong định dạng yêu cầu, thêm bit Start, bit Stop, bit chẵn lẻ khi cần. Trong một cách đơn giản, byte nhận được tự động được lưu trữ trong bộ đệm. UART có thể dùng nhanh một ngắt để báo cho CPU và các ứng dụng biết dữ liệu đang nhận được và các sự kiện khác .  Giới thiệu INT 14h của Bios Các nhà thiết kế máy tính đã dành riêng Int 14h của Bios để phục vụ cho cổng nối tiếp. Ngắt này phục vụ khá đầy đủ các yêu cầu về xuất, nhập và kiểm tra trạng thái đường truyền. Việc sử dụng các ngắt này làm cho chương trình trở nên ngắn gọn, dễ dàng. Các hàm của INT 14H: Hàm Chức năng 00h Khởi tạo khối ghép nối tiếp 01h Gửi một kí tự 02h Nhận một kí tự 03h Đọc trạng thái của khối ghép nối tiếp 04h Khởi tạo cổng nối tiếp mở rộng 05h Điều khiển truyền thong của cổng nối tiếp mở rộng Bios có thể điều hành tối đa bốn khối ghép nối tiếp có tên từ COM1 đến COM4 với các địa chỉ: Khối ghép nối Địa chỉ cơ sở Ngắt cứng IRQ COM1 3F8h IRQ4 COM2 2F8h IRQ3 COM3 3E8h IRQ4 COM4 2E8h IRQ3 2.2.2.1 Chuẩn giao tiếp RS232. 2.2.2.1.a Lịch sử RS232. Để thuận lợi cho việc giao tiếp giữa các thiết bị truyền thông với máy tính qua cổng nối tiếp, vào năm 1960 Hiệp hội công nghiệp điện tử (electronics industries asociation) đã đưa ra chuẩn giao tiếp RS232 (RS = Recommended Standard); đây là chuẩn giao tiếp được sử dụng rỗng rãi trong truyền thông nối tiếp. Có hai phiên bản RS232 được lưu hành trong thời gian tương đối dài là RS232B và RS232C. Cho đến nay, RS232B là phiên bản đã cũ, nay đã ít được sử dụng. Còn RS232C hiện vẫn còn tồn tại và thường được gọi là chuẩn RS232. 2.2.2.1.b Đặc điểm chuẩn RS232. Chuẩn RS232 quy định mức logic 1 ứng với điện áp từ -3V đến -25V (mark), mức logic 0 ứng với điện áp từ 3V đến 25V (space) và có khả năng cung cấp dòng từ 10 mA đến 20 mA. Ngoài ra, tất cả các ngõ ra đều có đặc tính chống chập mạch. Chuẩn RS232 cho phép truyền tín hiệu với tốc độ đến 20.000 bps nhưng nếu cáp truyền đủ ngắn có thể lên đến 115.200 bps. Chuẩn RS 232 sử dụng phương thức truyền thông không đối xứng, tức là sử dụng tín hiệu điện áp chênh lệch giữa một dây dẫn và đất. Các cổng của RS 232 có ngưỡng điện áp qui ước là -15V tới -3V, và 3V tới 15V (hoặc -5V, +5V, sự khác biệt giữa hai giá trị 3V, và 5V này được gọi là noise magin ( biên độ dao động của nhiễu). • Tín hiệu có áp lớn +3V được coi là mức logic 0 hoặc có giá trị cao (H). • Tín hiệu có áp nhỏ hơn –3V được coi là mức logic 1 hoặc giá trị thấp (L). • Điện áp từ -3V tới +3V là mức điện áp không có ý nghĩa. Chính vì từ – 3V tới 3V là phạm vi không được định nghĩa, trong trường hợp thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, một tín hiệu phải vượt qua quãng quá độ trong một thời gian ngắn hợp lý. Điều này dẫn đến việc phải hạn chế về điện dung của các thiết bị tham gia và của cả đường truyền. Tốc độ truyền dẫn tối đa phụ thuộc vào chiều dài của dây dẫn. Đa số các hệ thống hiện nay chỉ hỗ trợ với tốc độ 19,2 kBd (chiều dài cho phép 30 – 50 m). 2.2.2.1.c Vi mạch Max232. Chuẩn RS232 xuất hiện trước khi chuẩn TTL ra đời, do đó các mức điện áp của nó không tương thích với họ TTL ( họ TTL ra đời năm 1968 ). Vì chuẩn RS232 không tương thích với họ TTL, nên để kết nối bất kì thiết bị có giao tiếp RS232 với hệ vi xử lý / vi điều khiển thì ta cần phải sử dụng các bộ phận chuyển đổi điện áp để chuyển các mức logic TTL sang RS232 và ngược lạ. [...]... phù hợp 2.4 Vi điều khiển AT89C51 2.4.1 Giới thiệu - Vi điều khiển vi t tắt của từ micro- controller, là mạch tích hợp trên chip có thể lập trình, được dùng để điều khiển một hệ thống hoạt động theo mong muốn của mình Hệ thống bao gồm cả phần cứng lẫn phần mềm, phần cứng và phần mềm phải có quan hệ với nhau; vi điều khiển có tập lệnh, khi người lập trình nạp vào vi điều khiển, vi điều khiển tiến hành... 2a+ 2b- 1’ 1a- 1b+ và 2a+ 2b- 2’ 1a- 1b+ và 2a- 2b+ 3’ 1a+ 1b- và 2a- 2b+ 4’ - Trong kiểu điều khiển này, 2 cuộn dây được kích cùng lúc Điều này sẽ tạo nhiều momen xoắn hơn kiểu điều khiển một bước Tuy nhiên, dòng cung cấp cho động cơ sẽ tăng gấp 2 lần và vi c điều khiển khó khăn hơn so với - phương pháp điều khiển một bước Cả hai phương pháp trình bày ở trên gồm 4 bước điều khiển (quay 4 bước trên 1... gian tiến hành đóng - mở một cơ cấu nào đó Vi điều khiển được sử dụng trong các tivi, máy giặt, lò vi- ba, điện thoại… trong lĩnh vực tự động hóa thì vi điều khiển cũng được sử dụng khá phổ biến như trong robot, trong các băng chuyền, các bộ điều khiển tự - động, và vi điều khiển còn ứng dụng trong nhiều thiết bị khác nữa Do họ MCS-51TM đã trở thành chuẩn công nghiệp nên có rất nhiều hãng sản xuất ra... +5v Hình 2.2.2.1.b- Dạng dóng gói của MAX232 2.2. 3GIAO TIẾP VI ĐIỀU KHIỂN VỚI MÁY TÍNH BẰNG MATLAB 2.2.3.1 Matlab trong truyền thông nối tiếp Cũng như các phần mềm của Microsoft (Visuall basic , C ,C++)… thì Matlab cũng là một trong những phần mềm hỗ trợ đầy đủ các tính năng truyền thông qua cổng nối tiếp Với Matlab ta có thể thiết kế giao diện điều khiển dễ dàng, thiết lập các thuộc tính cho cổng nối... công vi c điều khiển cơ bản đã hoàn thành, vấn đề còn lại ta sẽ thi công các phần tử chấp hành các tín hiệu điều khiển này Cụ thể ở đây là Motor bước trong mô hình cơ khí, do vậy chúng ta bắt đầu tìm hiểu đến động cơ bước và mạch điều khiển chúng 2.3 Động cơ bước - Động cơ bước là một loại động cơ DC, động cơ này quay theo từng bước cố định theo một góc nào đó Góc bước giới hạn trong phạm vi từ 0.90... kết nối giữa của cuộn dây thường được cấp vào nguồn dương và hai đầu của mỗi cuộn dây được nối xuống đất, tuỳ thuộc vào đầu vào nối đất ta sẽ xác định chiều quay rotor Gọi là động cơ 4 pha vì động cơ có 4 cuộn dây được cung cấp điện một cách độc lập và thuật ngữ đơn cực được sử dụng vì dòng điện luôn chạy qua cuộn Stator theo chiều nhất định - Cách đơn giản để điều khiển động cơ bước 4 pha đơn cực... lại là cực nam Để cân bằng lực từ, mỗi cực của stator cần có khả năng chuyển được cực tính một cách nhanh chóng và đúng thời điểm 2.3.4 Ảnh hưởng của tải - Vì điều khiển theo kiểu vòng hở nên đòi hỏi mỗi bước phải thật chính xác, nhưng nếu tải quá lớn, động cơ không đủ momen để quay bước Khi có xung điều khiển đặt vào, rotor chỉ quay nhẹ rồi bị kéo trở lại vị trí gốc, hiện - tượng này gọi là ‘bị kẹt’... trong thực tế có sơ đồ như Hình 2.3.1.2 Trong Hình 2.3.1.2, cuộn dây 1 gồm 2 cực 1a và 1b nằm đối diện nhau để khi cấp điện qua cuộn 1 với cực tính +1a -1b, cực 1a và 1b lần lượt đóng vai trò là từ trường bắc và từ trường nam, tạo lực hút và đẩy rotor sắp thằng hàng (vị trí 1) Cách đơn giản nhất để điều khiển động cơ loại này là cấp điện vào lần lượt hoặc cuộn 1 hoặc cuộn 2 của stator Nếu muốn động cơ quay... Khi điều khiển bằng phương 1.8 0 pháp half-step (nửa bước), ta cần phải kích 400 bước với góc quay 0.9 0 Hình 2.3.1.4 sẽ minh hoạ cho phương pháp half-step Cấp điện 1a+ 1b- và 2a- 2b- 1 1a+ 1b- và 2a+ 2b- 1’ 1a- 1b- và 2a+ 2b- 2 1a- 1b+ và 2a+ 2b- 2’ 1a- 1b+ và 2a- 2b- 3 1a- 1b+ và 2a- 2b+ 3’ 1a- 1b- và 2a- 2b+ 4 1a+ 1b- và 2a- 2b+ - Vị trí 4’ Các động cơ nam châm vĩnh cửu thường có góc bước nhỏ Vi c. .. hiệu điều khiển khi sử dụng bộ nhớ ngoài hoặc thực hiện những chức năng đặc biệt Bit Tên Địa chỉ P3.0 RxD B0H Thu dữ liệu của port nối tiếp P3.1 TxD B1H Phát dữ liệu của port nối tiếp P3.2 INT0\ B2H Ngõ vào ngắt ngoài 0 P3.3 INT1\ B3H Ngõ vào ngắt ngoài 1 P3.4 T0 B4H Ngõ vào của bộ định thời/đếm 0 P3.5 T1 B5H Ngõ vào của bộ định thời/đếm 1 P3.6 WR\ B6H Điều khiển ghi vào RAM ngoài P3.7 RD\ B7H Điều khiển . đề tài thực hiện vi c vẽ lại bức ảnh chụp được từ Webcam thông qua giao diện matlab và vi điều khiển. Thực hiện ứng dụng nhúng này, chúng ta có thể biết nhiều hơn về Matlab và xử lý ảnh, vi. trình vi điều khiển 8051, lập trình matlab và quan trọng nhất là tài liệu về xử lý ảnh trong matlab. Chương II. CƠ SỞ LÝ THUYẾT 2.1 Ảnh và xử lý ảnh trong Matlab 2.1.1 Ảnh và thu nhận ảnh: Thông. xử lý, truyền thông giữa vi xử lý và Matlab, về động cơ bước, xây dựng mô hình cơ khí…Tóm lại ứng dụng điều khiển động cơ bước thông qua một giao diện điều khiển từ máy tính vào các ứng dụng

Ngày đăng: 23/10/2014, 07:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan