(NB) Đề cương bài giảng Lập trình điều khiển thiết bị gồm các nội dung chính được trình bày như sau: Tổng quan về lập trình điều khiển thiết bị, ngôn ngữ lập trình C#, sử dụng form và các điều khiển cơ bản, sử dụng các điều khiển xử lý hình ảnh và thời gian, tạo mô phỏng thiết bị điều khiển và chuyển động tịnh tiến
LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ MỤC LỤC MỤC LỤC Bài TỔNG QUAN VỀ LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.1 Lập trình điều khiển thiết bị từ máy 1.2 Giới thiệu giao diện truyền thơng máy tính 1.3 Các ngơn ngữ lập trình 1.4 Lập trình điều khiển Windows Form 1.4.1 Thiết kế giao diện 1.4.2 Sử dụng điều khiển 1.4.3 Sử dụng thư viện Bài 10 NGƠN NGỮ LẬP TRÌNH C# 10 2.1 Cấu trúc chương trình 11 2.2 Kiểu liệu 12 2.3 Biến, cách khai báo 16 2.3.1 Biến 16 2.3.2 Hằng 18 2.4 Các phép toán 21 2.4.1 Phép toán số học 21 2.4.2 Phép toán quan hệ 22 2.4.3 Phép toán logic 22 2.4.4 Phép toán tăng giảm 23 2.4.5 Thứ tự ưu tiên phép toán 24 2.5 Biểu thức 25 2.5.1 Biểu thức số học 25 2.5.2 Biểu thức logic 26 2.5.3 Biểu thức điều kiện 26 2.5.4 Biểu thức gán 27 2.5.5 Biểu thức ép kiểu 27 2.6 Cấu trúc rẽ nhánh 29 2.6.1 Cấu trúc rẽ nhánh if 29 2.6.2 Cấu trúc rẽ nhánh switch 34 2.7 Cấu trúc lặp while, while 37 2.7.1 Cấu trúc lặp While 37 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 2.7.2 Cấu trúc lặp while 38 2.8 Cấu trúc lặp for số lệnh điều khiển khác 41 2.8.1 Cấu trúc lặp for 41 2.8.1 Cấu trúc lặp foreach 46 2.8.1 Các lệnh điều khiển khác 47 Bài 47 SỬ DỤNG FORM VÀ CÁC ĐIỀU KHIỂN CƠ BẢN 47 3.1 Form 47 3.1.1 Chức 47 3.1.2 Một số thuộc tính thường dùng 48 3.1.3 Một số kiện thường dùng 51 3.1.4 Ví dụ minh họa 52 3.2 Labels 54 3.3 Button 54 3.4 Texbox 55 3.5 ComboBox, ListBox 60 3.6 Checkbox, RadioButton 61 Bài 62 THỰC HÀNH SỬ DỤNG CÁC ĐIỀU KHIỂN CƠ BẢN 62 4.1 Mục tiêu 62 4.2 Các kiến thức lý thuyết liên quan 62 4.3 Nội dung luyện tập 62 Bài 62 SỬ DỤNG CÁC ĐIỀU KHIỂN XỬ LÝ HÌNH ẢNH 62 VÀ THỜI GIAN 62 5.1 PictureBox 62 5.2 ImageList 63 5.3 Timer 63 5.4 DateTimePicker 63 5.5 ListView 63 5.6 TreeView 64 5.7 ProgressBar 64 Bài 64 THỰC HÀNH SỬ DỤNG CÁC ĐIỀU KHIỂN XỬ LÝ HÌNH ẢNH VÀ THỜI GIAN 64 6.1 Mục tiêu 64 6.2 Các kiến thức lý thuyết liên quan 64 6.3 Nội dung luyện tập 64 Bài 65 KỸ THUẬT THIẾT KẾ GIAO DIỆN 65 7.1 Các nguyên tắc chung thiết kế giao diện 65 7.2 Thiết kế giao diện C# 65 7.3 Kỹ thuật thiết kế giao diện điều khiển hệ thống 66 Bài 66 THẢO LUẬN THIẾT KẾ GIAO DIỆN 66 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 8.1 Mục tiêu 66 8.2 Tổ chức 66 Bài 67 TẠO MÔ PHỎNG THIẾT BỊ ĐIỀU KHIỂN VÀ CHUYỂN ĐỘNG TỊNH TIẾN 67 9.1 Tạo mô thiết bị điều khiển 67 9.2 Các kỹ thuật tạo mô chuyển động tịnh tiến 67 9.2.1 Kỹ thuật thay đổi toạ độ 67 9.2.2 Kỹ thuật vẽ lại hình 67 9.3 Các ví dụ tạo mơ chuyển động tịnh tiến 68 Bài 10 68 THỰC HÀNH LẬP TRÌNH MÔ PHỎNG 68 THIẾT BỊ ĐIỀU KHIỂN 68 10.1 Mục tiêu 68 10.2 Các kiến thức lý thuyết liên quan 68 10.3 Nội dung luyện tập 68 Bài 11 69 TẠO MÔ PHỎNG CHUYỂN ĐỘNG QUAY 69 11.1 Các kỹ thuật tạo mô chuyển động quay 69 11.1.1 Kỹ thuật vẽ lại hình 69 11.1.2 Kỹ thuật thay hình 69 11.2 Các ví dụ tạo mơ chuyển quay 70 Bài 12 70 THỰC HÀNH LẬP TRÌNH MƠ PHỎNG 70 THIẾT BỊ CHUYỂN ĐỘNG TỊNH TIẾN 70 12.1 Mục tiêu 70 12.2 Các kiến thức lý thuyết liên quan 70 12.3 Nội dung luyện tập 70 Bài 13 71 CỔNG SONG SONG 71 13.1 Cơ cổng song song 71 13.2 Kiến trúc phần cứng 72 13.3 Các ghi 75 13.4 Ghép nối qua cổng song song 77 Bài 14 80 THỰC HÀNH LẬP TRÌNH 80 MÔ PHỎNG CHUYỂN ĐỘNG QUAY 80 14.1 Mục tiêu 80 14.2 Các kiến thức lý thuyết liên quan 81 14.3 Nội dung luyện tập 81 Bài 15 82 LẬP TRÌNH CỔNG SONG SONG 82 15.1 Cơ lập trình cổng song song 82 15.2 Lập trình cổng song song số ngôn ngữ 82 15.3 Lập trình cổng song song C# 82 Bài 16 84 THẢO LUẬN GHÉP NỐI THIẾT BỊ 84 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ QUA CỔNG SONG SONG 84 16.1 Mục tiêu 84 16.2 Tổ chức 84 Bài 17 84 THỰC HÀNH LẬP TRÌNH CỔNG SONG SONG 84 17.1 Mục tiêu 84 17.2 Các kiến thức lý thuyết liên quan 84 17.3 Nội dung luyện tập 85 Bài 18 85 CỔNG NỐI TIẾP 85 18.1 Giới thiệu chung cổng nối tiếp 85 18.2 Kiến trúc phần cứng RS232 86 18.3 Giao thức truyền thông RS232 90 18.4 Một số chuẩn giao tiếp nối tiếp khác 91 18.4.1 RS422 91 18.4.2 Chuẩn RS423A 91 18.4.3 Chuẩn RS485 91 Bài 19 92 LẬP TRÌNH CỔNG NỐI TIẾP 92 19.1 Cơ lập trình cổng nối tiếp 92 19.2 Cổng COM ảo 92 19.3 Lập trình cổng COM số ngơn ngữ 92 19.4 Lập trình cổng COM C# 92 Bài 20 93 THỰC HÀNH CƠ BẢN LẬP TRÌNH TRUYỀN THƠNG QUA CỔNG NỐI TIẾP 93 20.1 Mục tiêu 93 20.2 Các kiến thức lý thuyết liên quan 93 20.3 Nội dung luyện tập 93 Bài 21 93 THẢO LUẬN GHÉP NỐI THIẾT BỊ QUA CỔNG NỐI TIẾP 93 21.1 Mục tiêu 93 21.2 Tổ chức 93 Bài 22 94 THỰC HÀNH LẬP TRÌNH TRUYỀN THÔNG GIỮA HAI THIẾT BỊ QUA CỔNG NỐI TIẾP 94 22.1 Mục tiêu 94 22.2 Các kiến thức lý thuyết liên quan 94 22.3 Nội dung luyện tập 94 Bài 23 94 MỘT SỐ GIAO DIỆN GHÉP NỐI KHÁC 94 23.1 Ghép nối qua cổng USB 94 23.1.1 Tổng quan 94 23.1.2 Kiến trúc 95 23.1.3 Đặc tính điện 98 23.1.4 Truyền liệu nối tiếp qua cổng USB 98 23.1.5 Lập trình điều khiển 99 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 23.2 Các khe cắm mở rộng 99 23.2.1 Bus mở rộng 99 23.2.2 Ghép nối qua khe cắm mở rộng 99 23.3 Một số giao diện khác 99 Bài 24 100 THỰC HÀNH LẬP TRÌNH 100 ĐIỀU KHIỂN THIẾT BỊ QUA CỔNG NỐI TIẾP 100 24.1 Mục tiêu 100 24.2 Các kiến thức lý thuyết liên quan 100 24.3 Nội dung luyện tập 100 Bài 25 100 THỰC HÀNH LẬP TRÌNH ỨNG DỤNG TỔNG HỢP 100 25.1 Mục tiêu 100 25.2 Các kiến thức lý thuyết liên quan 101 25.3 Nội dung luyện tập 101 TÀI LIỆU THAM KHẢO 102 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ ĐỀ CƯƠNG BÀI GIẢNG HỌC PHẦN LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài TỔNG QUAN VỀ LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.1 Lập trình điều khiển thiết bị từ máy Nhiệm vụ lập trình điều khiển thiết bị từ máy tính: - Tạo giao diện người dùng: biểu diễn, mô hoạt động cần thiết cho thiết bị điều khiển, thể số liệu gửi từ thiết bị, gửi lệnh, liệu đến thiết bị - Thực ghép nối, giao tiếp với thiết bị thông qua cổng giao tiếp máy tính như: COM, LPT, USB, - Thực truyền thông với thiết bị, điều khiển thiết bị thông qua giao thức làm việc chung thiết bị phần mềm điều khiển máy tính 1.2 Giới thiệu giao diện truyền thơng máy tính Các giao diện truyền thơng, ghép nối máy tính thường dùng để giao tiếp điều khiển thiết bị: - Giao diện nối tiếp RS232 (COM): truyền thông theo giao thức chuẩn, dễ ghép nối, tốc độ thấp, nhiều thiết bị hỗ trợ giao tiếp vật lý giao thức truyền thông theo giao diện Giao diện RS232 giao diện sử dụng phổ biến để ghép nối điều khiển thiết bị - Giao diện song song LPT: cổng LPT thiết kế với mục đích chủ yếu ghép nối với máy in để xuất liệu in ấn điều khiển máy in Tuy nhiên với khả ghép nối điều khiển lập trình, cổng sử dụng ghép nối điều khiển thiết bị khác Mặc dù cổng song song tốc độ điều khiển, truyền liệu cổng khơng cao, khó khăn giao tiếp vật lý lập trình điều khiển Trong thực tế dùng để ghép nối thiết bị khác LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ - Giao diện USB: chuẩn truyền thông nối tiếp cho phép truyền với tốc độ cao có khả tương thích tốt với nhiều loại thiết bị Cổng sử dụng rộng rãi việc ghép nối điều khiển thiết bị từ máy tính Cổng có số ưu điểm nối trội: + Tốc độ cao + Giao tiếp đơn giản + Dễ tương thích + Hỗ trợ nguồn 5V công suất nhỏ - Một số giao diện khác: giao diện GAME (thường dùng ghép nối cần điều khiển để điều khiển chương trình trị chơi máy tính), cổng vào Card âm thanh, khe cắm mở rộng (ISA, PCI, ) 1.3 Các ngơn ngữ lập trình Tùy mơi trường làm việc, phần cứng hệ thống sử dụng, người phát triển hệ thống lựa chọn ngơn ngữ lập trình khác Có nhiều ngơn ngữ lập trình cho phép thiết kế giao diện, truy cập cổng để tạo chương trình điều khiển hệ thống Trên hệ điều hành MS-DOS: ngơn ngữ lập trình C/C++, Pascal, Assembly, điều có khả tạo chương chương trình điều khiển theo yêu cầu định Việc truy cập trực tiếp cổng, thiết bị phần cứng hệ điều hành DOS đơn giản Trong Pascal, ta gửi liệu cổng P lệnh Port[p]:=; hay Assembly lệnh IN, OUT để đọc hay ghi cổng Trên hệ điều hành Windows: phổ biến ngôn ngữ lập trình trực quan, dể dùng Visual Basic 6.0 (VB6), Visual C, cơng cụ lập trình DotNet C#, VB.Net, Các ngơn ngữ có mạnh riêng, tùy yêu cầu môi trường làm việc mà lựa chọn cho phù hợp LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.4 Lập trình điều khiển Windows Form 1.4.1 Thiết kế giao diện Giao diện người sử dụng số thành phần quan trọng ứng dụng Đối với người sử dụng, giao diện ứng dụng; họ khơng cần ý đến thành phần mã thực thi bên Ứng dụng phổ biến hay không phụ thuộc nhiều vào giao diện Thông qua giao diện, người dùng điều khiển hoạt động chương trình Giao diện tốt giúp người dùng vận hành hệ thống dễ dàng, tốn thời gian, giảm nhầm lẫn q trình điều khiển đồng thời tạo cảm giác thoại mái làm việc Cần có khảo sát cẩn thận, nghiên cứu ứng dụng nguyên tắc thiết kế giao diện Việc thiết kế giao diện phải đặc biệt ý đến tính chất công việc, lĩnh vực hoạt động phần mềm, đối tượng người sử dụng Với phần mềm điều khiển thiết bị, nguyên tắc việc thiết kế giao diện phần mềm nói chung, người phát triển hệ thống cần ý tới tính chất điều khiển thiết bị ghép nối với máy tính Giao diện thiết kế cho có thống với giao diện điều khiển vốn có thiết bị cần điều khiển Như sẽ tạo thuận tiện, tận dụng kiến thức kỹ vận hạnh hệ thống có sẵn người dùng Thơng qua giao diện người dùng không lệnh điều khiển mà cịn quan sát biến đổi hệ thống điều khiển Do vậy, giao diện cần có phần thể trạng thái hoạt động thiết bị điều khiển Từ yêu cầu riêng biệt hệ thống điều khiển, giao diện cần có khả mô loại chuyển động, tạo công cụ điều khiển nút bấm, núm xoay, cơng tắc, cho tương thích với bàn điều khiển thiết bị (nếu có) Vấn đề cịn lại điều khiển thiết bị hoạt động thông qua ghép nối với máy tính Để điều khiển, cần thiết phải làm chủ cổng truyền thơng máy tính ghép nối thiết bị Đồng thời phải hiểu rõ sử dụng giao thức thiết bị vào điều khiển, tạo liệu gửi đi, phân tích thơng tin nhận từ thiết bị thể thông tin cần thiết giao diện phần mềm điều khiển LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.4.2 Sử dụng điều khiển Các điều khiển có sẵn ngơn ngữ lập trình đáp ứng yêu cầu điều khiển hoạt động máy tính Tuy nhiên với nhiệm vụ điều khiển thiết bị phần cứng bên ngồi, điều khiển chưa đáp ứng đủ yêu cầu phần mềm điều khiển Ngồi việc tận dụng điều khiển có sẵn môi trường phát triển phần mềm ngôn ngữ lựa chọn, người phát triển hệ thống điều khiển cần bổ sung thêm điều khiển thích hợp cho phần mềm nút gạt, xoay, công tắc, sở mô tạo điều khiển riêng Các điều khiển mơ hình ảnh, cách thức hoạt động giống với thực tế thiết bị giúp trình học sử dụng, vận hành thuận tiện, giảm sai nhầm 1.4.3 Sử dụng thư viện Trong trình phát triển phần mềm điều khiển, nhiều thao tác can thiệp sâu đến hệ điều hành khơng thực mơi trường phát triển phần mềm ứng dụng thông thường Đôi lý thời gian, chi phí mà người phát triển hệ thống sử dụng thư viện có sẵn vào hệ thống Tùy ngơn ngữ, cơng cụ lập trình lựa chọn mà cách khai báo sử dụng thư viện có khác biệt định Ví dụ VB6, người lập trình khai báo hàm API cung cấp file thư viện DLL lệnh Declare, C# import, LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Các kiểu ghép nối truyền thông cổng RS232: Điện áp sử dụng truyền thông RS232 bao gồm mức điện áp âm dương (khơng tương thích với mức logic TTL CMOS) 88 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Số "0" biểu diện mức điện áp +5V số "1" biểu diễn mức đienẹ áp -5V Giải điện áp sử dụng RS232 thể bảng sau: Các chíp giao tiếp, hỗ trợ chuyển đổi mức logic TTL sang mức điện áp thích hợp cổng RS232: MAX232, MAX233, 89 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 18.3.Giao thức truyền thơng RS232 Định dạng từ: từ bao gồm bit khởi đầu (start bit), bit liệu (data bits), bit kiểm tra chẵn lẻ (parity bit), bit báo hiệu kết thúc (stop bits) 90 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 18.4.Một số chuẩn giao tiếp nối tiếp khác Sinh viên tự nghiên cứu theo tài liệu cung cấp 18.4.1 RS422 18.4.2 Chuẩn RS423A 18.4.3 Chuẩn RS485 91 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài 19 LẬP TRÌNH CỔNG NỐI TIẾP 19.1.Cơ lập trình cổng nối tiếp Cổng COM thiết kế tuân thủ giao thức truyền thơng nối tiếp Việc lập trình cho cổng phải dựa giao thức quy ước Hiện nay, thường ngôn ngữ hỗ trợ lập trình cổng COM cung cấp sẵn cho người lập trình điều khiển (lớp đối tượng) thiết kế tuân thủ giao thức Người lập trình cần thiết lập thuộc tính cần thiết, sử dụng phương thức, kiện thiết kế sẵn để giao tiếp qua cổng 19.2.Cổng COM ảo Cổng COM ảo tạo sở tài nguyên sẵn có khác giúp chương trình giao tiếp qua cổng COM làm việc máy tính khơng có cổng COM vật lý Một số chương trình mô cặp cổng COM ghép nối với cho phép chương trình máy truyền liệu cho thơng qua cổng COM ảo loại 19.3.Lập trình cổng COM số ngôn ngữ Visual Basic: cung cấp điều khiển truy cập cổng COM VB6 có điều khiển MsComm cho phép người lập trình tạo chương trình truy cập cổng COM cách dễ dạng C# có lớp đối tượng SerialPort cho phép thao tác với cổng COM 19.4.Lập trình cổng COM C# - Sử dụng lớp đối tượng SerialPort - Thiết lập thuộc tính cần thiết, đặt giao thức phù hợp - Sử dụng phương thức, thuộc tính, kiện 92 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài 20 THỰC HÀNH CƠ BẢN LẬP TRÌNH TRUYỀN THƠNG QUA CỔNG NỐI TIẾP 20.1.Mục tiêu - Trình bày đặc điểm cổng nối tiếp, vấn đề liên quan xử lý lập trình cổng nối tiếp - Lập trình truyền, nhận liệu qua cổng nối tiếp 20.2.Các kiến thức lý thuyết liên quan - Kiến thức sử dụng ngơn ngữ lập trình C# - Kỹ thuật lập trình sử dụng thư viện hỗ trợ lập trình giao tiếp cổng nối tiếp 20.3.Nội dung luyện tập - Thiết kế giao diện cho tập giao hệ thống tập - Lập trình mở cổng, gửi nhận liệu qua cổng nối tiếp xử lý lỗi Bài 21 THẢO LUẬN GHÉP NỐI THIẾT BỊ QUA CỔNG NỐI TIẾP 21.1.Mục tiêu - Trình bày cấu trúc phần cứng cổng nối tiếp - Nêu kỹ thuật ghép nối gữa thiết bị với qua cổng nối tiếp - Để xuất giải pháp ghép nối cho tình cụ thể 21.2.Tổ chức - Sinh viên chia thành nhóm nhỏ từ đến người - Thảo luận theo chủ đề giao - Các nhóm báo cáo kết 93 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài 22 THỰC HÀNH LẬP TRÌNH TRUYỀN THƠNG GIỮA HAI THIẾT BỊ QUA CỔNG NỐI TIẾP 22.1.Mục tiêu - Trình bày đặc điểm cổng nối tiếp, vấn đề liên quan xử lý lập trình cổng nối tiếp - Thiết kế giao thức để ứng dụng vào xử lý truyền thông thiết bị - Lập trình truyền, nhận liệu qua cổng nối tiếp thiết bị 22.2.Các kiến thức lý thuyết liên quan - Kiến thức sử dụng ngơn ngữ lập trình C# - Kỹ thuật lập trình sử dụng thư viện hỗ trợ lập trình giao tiếp cổng nối tiếp - Nguyên tắc, kỹ thuật thiết kế giao thức truyền thông 22.3.Nội dung luyện tập - Thiết kế giao diện cho tập giao hệ thống tập - Giao tiếp cổng COM hệ thống ngoại vi Bài 23 MỘT SỐ GIAO DIỆN GHÉP NỐI KHÁC 23.1.Ghép nối qua cổng USB 23.1.1 Tổng quan Sinh viên sử dụng tài liệu tham khảo [3,4] Cổng USB sử dụng phổ biến cho thiết bị ghép nối với máy tính 94 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Các ưu điểm USB: - Dễ sử dụng: không cần phải thiết lập cấu hình hay cài đặt - Tốc độ cao - Linh hoạt - Chi phí thấp - Hỗ trợ nguồn - Được hỗ trợ hệ điều hành USB sử dụng kỹ thuật truyền thông nối tiếp làm việc với tốc độ cao, cho phép ghép nối nhiều thiết bị cổng USB hỗ trợ nhiều tốc độ truyền thông khác như: low speed, full speed hi speed 23.1.2 Kiến trúc Giao diện USB: sử dụng đầu nối tiếp điểm cable truyền thông bao gồm sợi Đầu nối hỗ trợ chuẩn chuẩn A chuẩn B Chuẩn A sử dụng đầu nối dẹt, tiếp điểm trải phẳng Đầu nối chuẩn B sử dụng đầu nối vuông, tiếp điểm xếp thành hàng Đầu nối chuẩn A 95 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Đầu nối Hub theo chuẩn A Đầu nói Hub theo chuẩn B Sơ đồ chân tín hiệu: Kiến trúc low-full speed: Low-full speed cho phép truyền với tốc độ 1.5Mbps đến 12Mbps Mạch điện thể hình sau: 96 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Hight speed: Cho phép truyền nhận với tốc độ lên đến 480Mbps Chế độ truyền thông hight speed hỗ trợ USB phiên 2.0 Các phiên trước hỗ trợ tốc độ thấp đầy đủ 97 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 23.1.3 Đặc tính điện Chế độ Low Full Speed: Giá trị "1" mã hóa: chân D+ có điện áp 2.8V Dkhông lớn 0.3V Điện áp D+>D- Giá trị "0" mã hóa: chân D- có điện áp tối thiểu 2.8V avf D+ không lớn 0.3V Điện áp D->D+ Chế độ Hight Speed: Giá trị "1" mã hóa: D+ tối thiểu 0.36V, D- không lớn 0.01V Giá trị "0" mã hóa: D- tối thiểu 0.36V, D+ không lớn 0.01V 23.1.4 Truyền liệu nối tiếp qua cổng USB Dữ liệu truyền USB sử dụng gói theo giao thức định nghĩa sẵn Gói liệu: bao gồm SYNC, PID, address, endpoint, frame number, data CRC Bảng sau cho thấy thơng tin chi tiết trường gói liệu này: 98 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 23.1.5 Lập trình điều khiển Lập trình cho USB chia thành phần sau: - Lập trình cho chương trình điều khiển máy tính tạo giao diện điều khiển thiết bị ghép nối qua cổng USB - Lập trình cho firmwave thiết bị ghép nối với máy tính qua USB Với thiết bị ghép nối với máy tính cần phải trải qua giải đoạn: - Windows nhận biết thiết bị, bắt tay với thiết bị - Cài đài driver điều khiển thiết bị Sau thiết bị nhận dạng cài đặt driver thành cơng, ta lập trình sử dụng hàm truyền thông cung cấp thông qua driver để truyền nhận liệu, giao tiếp với thiết bị qua cổng USB Để lập trình trực tiếp giao tiếp với thiết bị qua cổng USB cần vận dụng quy trình “bắt tay”, cấu trúc gói tin, phương thức thiết lập truyền thông qua cổng USB Chi tiết tham khảo tài liệu [4] 23.2.Các khe cắm mở rộng Sinh viên tự nghiên cứu (ISA, PCI, PCI Express, ) 23.2.1 Bus mở rộng 23.2.2 Ghép nối qua khe cắm mở rộng 23.3.Một số giao diện khác Sinh viên tự nghiên cứu (Games Port, Sound, ) 99 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài 24 THỰC HÀNH LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ QUA CỔNG NỐI TIẾP 24.1.Mục tiêu - Trình bày đặc điểm cổng nối tiếp, vấn đề liên quan xử lý lập trình cổng nối tiếp - Phân tích giao thức truyền thông thiết bị - Sử dụng giao thức truyền thơng thiết bị, kỹ thuật lập trình truyền thơng qua cổng nối tiếp để lập trình điều khiển thiết bị hoạt động 24.2.Các kiến thức lý thuyết liên quan - Kiến thức sử dụng ngôn ngữ lập trình C# - Kỹ thuật lập trình sử dụng thư viện hỗ trợ lập trình giao tiếp cổng nối tiếp - Kỹ thuật lập trình truyền thơng qua cổng COM 24.3.Nội dung luyện tập - Thiết kế giao diện cho tập giao hệ thống tập - Giao tiếp cổng COM hệ thống ngoại vi (thiết bị ảo/vật lý) có giao thức điều khiển - Bài tập: tài liệu Bài tập thực hành lập trình điều khiển thiết bị Bài 25 THỰC HÀNH LẬP TRÌNH ỨNG DỤNG TỔNG HỢP 25.1.Mục tiêu - Ứng dụng kỹ thuật tổng hợp thiết kế giao diện, lập trình truyển thơng qua cổng 100 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ - Thực thiết kế giao diện lập trình điều khiển thiết bị thông qua giao diện LPT COM 25.2.Các kiến thức lý thuyết liên quan - Kiến thức sử dụng ngôn ngữ lập trình C# - Kỹ thuật thiết kế giao diện - Kỹ thuật lập trình truyền thơng qua cổng LPT, cổng COM 25.3.Nội dung luyện tập - Thiết kế giao diện cho tập giao hệ thống tập - Lập trình điều khiển thiết bị qua cổng COM, LPT - Bài tập: theo tài liệu Bài tập thực hành lập trình điều khiển thiết bị 101 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ TÀI LIỆU THAM KHẢO [1] Jan Axelson, "Paranell Port Complete", Lakeview Research LLC, 2007 [2] Jan Axelson, "Serial Port Complete", Lakeview Research LLC, 2007 [3] Jan Axelson, "USB Complete", Lakeview Research LLC, 2001 [4] Compaq, Hewlett-Package, Intel, Lucent, Microsoft, NEC, Philips, "Universal Serial Bus Specification", Revision 2.0, 2000 [5] Nguyễn Ngọc Bình Phương Thái Thanh Phong., "Lập trình Visual Basic 6.0", NXB Giao thông Vận tải, 2006 [6] Khoa CNTT, Các đề cương giảng lập trình C# [7] Bộ mơn KTMT, Bài tập thực hành lập trình Điều khiển thiết bị 102 ... 102 LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ ĐỀ CƯƠNG BÀI GIẢNG HỌC PHẦN LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ Bài TỔNG QUAN VỀ LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.1 Lập trình điều khiển thiết bị từ máy Nhiệm vụ lập trình. ..LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ MỤC LỤC MỤC LỤC Bài TỔNG QUAN VỀ LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.1 Lập trình điều khiển thiết bị từ máy ... thức thiết bị vào điều khiển, tạo liệu gửi đi, phân tích thơng tin nhận từ thiết bị thể thông tin cần thiết giao diện phần mềm điều khiển LẬP TRÌNH ĐIỀU KHIỂN THIẾT BỊ 1.4.2 Sử dụng điều khiển