liờn tục được phỏt triển khụng ngừng, cựng với đú là nhiều kỹ thuật, cụng nghệ mới được ỏp dụng để điều khiển cỏc mỏy múc, thiờt bị,..Sự kết nối, giao tiếp với cỏc thiết bị ngoại vi bờn
Trang 1§å ¸n m«n häc:
ĐO LƯỜNG ĐIỀU KHIỂN BẰNG MÁY TÍNH
Đề tài: THIẾT KẾ VOLTMET ĐIỆN TỬ SỬ DỤNG CỔNG NỐI TIẾP
GVHD: Vò ThÞ Thu H¬ng SVTH: Vũ Văn Dũng
Ngô Văn HàPhạm Huy HảiLớp: Điện tử 4K5
Hà Nôi 2014
Trang 2
Phụ lục
Lời nói đầu
Chương I: Tổng quan về giao tiếp cổng nối tiếp
1 Cấu trúc cổng nối tiếp
2 Cơ bản và ghép nối về chuẩn giao tiếp RS232
3 Sơ đồ ghép nối RS232
4 Phần mềm giao tiếp
Chương II: Giới thiệu chương trình điều khiển Visual Basic
1 Tổng quan về Visual Basic
2 Các thao tác cơ bản khi xây dựng ứng dụng
Chương III: Cấu trúc Vi Điều Khiển 8051
1 Giới thiệu tổng quan về họ 8051 (AT 89S52)
2 Sơ đồ khố và chức năng
3 Giới thiệu ADC0804
4 Giới thiệu Max232
Chương IV: Các chương trình thiết kế mô phỏng Voltmet điện tử
1 Mô phỏng Proteus và Visual Basic
2 Các chương trình điều khiển
Chương V: Ứng dụng
Lêi Nãi §Çu
Trang 3liờn tục được phỏt triển khụng ngừng, cựng với đú là nhiều kỹ thuật, cụng nghệ mới được ỏp dụng để điều khiển cỏc mỏy múc, thiờt bị,
Sự kết nối, giao tiếp với cỏc thiết bị ngoại vi bờn ngoài ngày càng trở nờn tinh vi, đũi hỏi độ chớnh xỏc cao hơn Cựng với đú là sự ra đời củakỹthuật ghộp nối với mỏy tớnh
để giải quyết vấn đề trao đổi dữ liệu giữa mỏy tớnh với thiết bị ngoại vi bờn ngoài, nú ngày càng nhiều thiết bị sử dụng kỹ thuật này đem lại sự tiện lợi, thụng minh ỏp dụng vào cuộc sống Ngoài ra mỏy tớnh được sửdụng trong cỏc nhà mỏy xớ nghiệp trong cỏcdõy truyền sản xuất, trong cỏc ứng dụng thiết kếngụi nhà thụng minh Cỏc thiết bị, hệthống đo lường ghộp nối với mỏy tớnh cú độchớnh xỏc cao
Với đề tài” Thiết kế Voltmet điện tử sử dụng cổng nối tiếp” qua một thời gian
nghiờn cứu tỡm hiểu chỳng em đó hoàn thành được đề tài và cú thờm một số kiến thức trong lĩnh vực điều khiển ghộp nối với mỏy tớnh Tuy nhiờn do thời gian cú hạn cộng với lượng kiến thức cũn nhiều hạn chế nờn đề tài của chỳng em cũn nhiều thiếu sút, mong nhận được sự gúp ý của cỏc thầy cụ giỏo cựng cỏc bạn để chỳng em cú thể hoànthiện đề tài này
Đề tài gồm cỏc phần:
Phần 1:Tổng quan về giao tiếp cổng nối tiếp
Phần 2: Giới thiệu chương trỡnh điều khiển bằng Visual Basic
Phần 3: Cấu trỳc Vi Điều Khiển 8051
Phần 4: Cỏc chương trỡnh thiết kế mụ phỏng Voltmet điện tử
Phần 5: Ứng dụng
Mặc dù chúng em rất cố gắng để hoàn thành đồ án này đúng thời hạn ,nhng không thể trỏnh khỏi những thiếu sót mong quí thầy cô thông cảm Chúng em mong đợc sự
đóng góp ý kiến của các thầy cô và các bạn Cuối cùng chúng em xin chân thành cảm
ơn quí thầy cô cùng các bạn sinh viên.
Chương I: TỔNG QUAN VỀ GIAO TIẾP CỐNG NỐI
TIẾP
Trang 41. Cấu trúc cổng nối tiếp
Cổng nối tiếp được sử dụng để truyền dữ liệu hai chiều giữa máy tính và ngoại vi, cócác ưu điểm sau:
- Khoảng cách truyền xa hơn truyền song song
- Số dây kết nối ít
- Có thể truyền không dây dùng hồng ngoại
- Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device)
- Cho phép nối mạng
- Có thể tháo lắp thiết bị trong lúc máy tính đang làm việc
- Có thể cung cấp nguồn cho các mạch điện đơn giản
Các thiết bị ghép nối chia thành 2 loại: DTE (Data Terminal Equipment) và DCE(Data Communication Equipment) DCE là các thiết bị trung gian như MODEM còn DTE là
các thiết bị tiếp nhận hay truyền dữ liệu như máy tính, PLC, vi điều khiển, … Việc trao đổi
tín hiệu thông thường qua 2 chân RxD (nhận) và TxD (truyền) Các tín hiệu còn lại cóchứcnăng hỗ trợ để thiết lập và điều khiển quá trình truyền, được gọi là các tín hiệu bắt tay
(handshake) Ưu điểm của quá trình truyền dùng tín hiệu bắt tay là có thể kiểm soát đường
truyền
Tín hiệu truyền theo chuẩn RS-232 của EIA (Electronics Industry Associations).Chuẩn RS-232 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 RS-232 cho phép truyền tín hiệu với tốc độ đến 20.000 bps nhưng nếu cáptruyền đủ ngắn có thể lên đến 115.200 bps
Các phương thức nối giữa DTE và DCE:
- Đơn công (simplex connection): dữ liệu chỉ được truyền theo 1 hướng
- Bán song công ( half-duplex): dữ liệu truyền theo 2 hướng, nhưng mỗi thời điểmchỉ được truyền theo 1 hướng
- Song công (full-duplex): số liệu được truyền đồng thời theo 2 hướng
Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau:
Khi không truyền dữ liệu, đường truyền sẽ ở trạng thái mark (điện áp -10V) Khi bắt
Trang 5truyền Dạng
tín hiệu truyền mô tả như sau (truyền ký tự A):
Các đặc tính kỹ thuật của chuẩn RS-232 như sau:
Các tốc độ truyền dữ liệu thông dụng trong cổng nối tiếp là: 1200 bps, 4800 bps,
Trang 69600 bps và 19200 bps.
Sơ đồ chân:
Hình 4.2 – Sơ đồ chân cổng nối tiếp
Cổng COM có hai dạng: đầu nối DB25 (25 chân) và đầu nối DB9 (9 chân) mô tả nhưhình 4.2 Ý nghĩa của các chân mô tả như sau:
Trang 7Truyền thông giữa hai nút
Các sơ đồ khi kết nối dùng cổng nối tiếp:
Hình 4.3 – Kết nối đơn giản trong truyền thông nối tiếp
Khi thực hiện kết nối như trên, quá trình truyền phải bảo đảm tốc độ ở đầu phát vàthu giống nhau Khi có dữ liệu đến DTE, dữ liệu này sẽ được đưa vào bộ đệm và tạo ngắt
Ngoài ra, khi thực hiện kết nối giữa hai DTE, ta còn dùng sơ đồ sau:
Trang 8
Hình 4.4 – Kết nối trong truyền thông nối tiếp dùng tín hiệu bắt tay
Khi DTE1 cần truyền dữ liệu thì cho DTR tích cực � tác động lên DSR của DTE2cho biết sẵn sàng nhận dữ liệu và cho biết đã nhận được sóng mang của MODEM (ảo) Sau
đó, DTE1 tích cực chân RTS để tác động đến chân CTS của DTE2 cho biết DTE1 có thể
nhận dữ liệu Khi thực hiện kết nối giữa DTE và DCE, do tốc độ truyền khác nhau nên phải
thực hiện điều khiển lưu lượng Quá trinh điều khiển này có thể thực hiện bằng phần mềm
hay phần cứng Quá trình điều khiển bằng phần mềm thực hiện bằng hai ký tự Xon vàXoff
Ký tự Xon được DCE gởi đi khi rảnh (có thể nhận dữ liệu) Nếu DCE bận thì sẽ gởi
2. Cơ bản và ghép nối về chuẩn giao tiếp RS232
Ngày nay các thiết bị đo lường, điều khiển đều phải giao tiếp với máy tính để quan sát thông số
và chế độ hoạt động của thiết bị như thế nào? Chuẩn giao tiếp được coi là đơn giản và dễ dùng đó
là RS232 Hầu như các thiết bị đều được giao tiếp với máy tính thông qua chuẩn này Bài viết này sẽ nói về cơ bản chuẩn giao tiếp RS232: Tổng quan chung về RS232, Sơ đồ ghép nối, Giao diện phần mềm.
Trang 91) Đặt vấn đề
Vấn đề giao tiếp giữa PC và vi điều khiển rất quan trọng trong các ứng dụng điều khiển, đo lường Ghép nối qua cổng nối tiếp RS232 là một trong những kỹ thuật được sử dụng rộng rãi để ghép nối các thiết bị ngoại vi với máy tính.Nó là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nối nhiều nhất là 2 thiết bị , chiều dài kết nối lớn nhất cho phép để đảm bảo dữ liệu là 12.5 đến 25.4m, tốc độ 20kbit/s đôi khi là tốc độ 115kbit/s với một số thiết bị đặc biệt Ý nghĩa của chuẩn truyền thông nối tiếp nghĩa là trong một thời điểm chỉ có một bit được gửi đi dọc theođường truyền
Có hia phiên bản RS232 được lưu hành trong thời gian tương đối dài là RS232B và RS232C Nhưng cho đến nay thì phiên bản RS232B cũ thì ít được dùng còn RS232C hiện vẫn được dùng và tồn tại thường được gọi là tên ngẵn gọn là chuẩn RS232
Các máy tính thường có 1 hoặc 2 cổng nối tiếp theo chuẩn RS232C được gọi là cổng Com Chúng được dùng ghép nối cho chuột, modem, thiết bị đo lường Trên main máy tính có loại 9 chân hoặc lại 25 chân tùy vào đời máy và main của máy tính Việc thiết kế giao tiếp với cổng RS232 cũng tương đối dễ dàng, đặc biệt khi chọn chế độ hoạt động là không đồng bộ và tốc độ truyền dữ liệu thấp
2) Ưu điểm của giao diện nối tiếp RS232
+ Khả năng chống nhiễu của các cổng nối tiếp cao
+ Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện
+ Các mạch điện đơn giản có thể nhận được điện áp nguồn nuôi qua công nối tiếp3) Những đặc điểm cần lưu ý trong chuẩn RS232
+ Trong chuẩn RS232 có mức giới hạn trên và dưới (logic 0 và 1) là +-12V Hiện nay đang được cố định trở kháng tải trong phạm vi từ 3000 ôm - 7000 ôm
+ Mức logic 1 có điện áp nằm trong khoảng -3V đến -12V, mức logic 0 từ +-3V đến 12V
Trang 10+ Tốc độ truyền nhận dữ liệu cực đại là 100kbps ( ngày nay có thể lớn hơn)
+ Các lối vào phải có điện dung nhỏ hơn 2500pF
+ Trở kháng tải phải lớn hơn 3000 ôm nhưng phải nhỏ hơn 7000 ôm
+ Độ dài của cáp nối giữa máy tính và thiết bị ngoại vi ghép nối qua cổng nối tiếp RS232 không vượt qua 15m nếu chúng ta không sử model
+ Các giá trị tốc độ truyền dữ liệu chuẩn :
50,75,110,750,300,600,1200,2400,4800,9600,19200,28800,38400 56600,115200 bps
4) Các mức điện áp đường truyề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 Do đó ngay từ đầu tiên ra đời nó đã mang
vẻ lỗi thời của chuẩn TTL, nó vấn sử dụng các mức điện áp tương thích TTL để mô tảcác mức logic 0 và 1 Ngoài mức điện áp tiêu chuẩn cũng cố định các giá trị trở khángtải được đấu vào bus của bộ phận và các trở kháng ra của bộ phát
Mức điện áp của tiêu chuẩn RS232C ( chuẩn thường dùng bây giờ) được mô tả như sau:
+ Mức logic 0 : +3V , +12V
+ Mức logic 1 : -12V, -3V
Các mức điện áp trong phạm vi từ -3V đến 3V là trạng thái chuyển tuyến 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á độ trongmột thơì 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 5) Cổng RS232 trên PC
Hầu hết các máy tính cá nhân hiện nay đều được trang bị ít nhất là 1 cổng Com hay cổng nối tiếp RS232 Số lượng cổng Com có thể lên tới 4 tùy từng loại main máy tính.Khi đó các cổng Com đó được đánh dấu là Com 1, Com 2, Com 3 Trên đó có 2 loại đầu nối được sử dụng cho cổng nối tiếp RS232loại 9 chân (DB9) hoặc 25 chân
(DB25) Tuy hai loại đầu nối này có cùng song song nhưng hai loại đầu nối này được phân biệt bởi cổng đực (DB9) và cổng cái (DB25)
Ta xét sơ đồ chân cổng Com 9 chân:
Trang 11Trên là các kí hiệu chân và hình dạng của cổng DB9
Chức năng của các chân như sau:
+ chân 1 : Data Carrier Detect (DCD) : Phát tín hiệu mang dữ liệu
+ chân 2: Receive Data (RxD) : Nhận dữ liệu
+ chân 3 : Transmit Data (TxD) : Truyền dữ liệu
+ chân 4 : Data Termial Ready (DTR) : Đầu cuối dữ liệu sẵn sàng được kích hoạt bởi
bộ phận khi muốn truyền dữ liệu
+ chân 5 : Singal Ground ( SG) : Mass của tín hiệu
+ chân 6 : Data Set Ready (DSR) : Dữ liệu sẵn sàng, được kích hoạt bởi bộ truyền khi nó sẵn sàng nhận dữ liệu
+ chân 7 : Request to Send : yêu cầu gửi,bô truyền đặt đường này lên mức hoạt động khi sẵn sàng truyền dữ liệu
+ chân 8 : Clear To Send (CTS) : Xóa để gửi ,bô nhận đặt đường này lên mức kích hoạt động để thông báo cho bộ truyền là nó sẵn sàng nhận tín hiệu
+ chân 9 : Ring Indicate (RI) : Báo chuông cho biết là bộ nhận đang nhận tín hiệu rung chuông
Còn DB28 bây giờ hầu hết các main mới ra đều không có cổng này nữa Nên tôi không đề cập đến ở đây
6) Quá trình dữ liệu
a) Quá trình truyền dữ liệu
Truyền dữ liệu qua cổng nối tiếp RS232 được thực hiện không đồng bộ Do vậy nên tại một thời điểm chỉ có một bit được truyền (1 kí tự) Bộ truyền gửi một bit bắt đầu (bit start) để thông báo cho bộ nhận biết một kí tự sẽ được gửi đến trong lần truyền bittiếp the Bit này luôn bắt đầu bằng mức 0 Tiếp theo đó là các bit dữ liệu (bits data) được gửi dưới dạng mã ASCII( có thể là 5,6,7 hay 8 bit dữ liệu) Sau đó là một Parity bit ( Kiểm tra bit chẵn, lẻ hay không) và cuối cùng là bit dừng - bit stop có thể là 1, 1,5 hay 2 bit dừng
b) Tốc độ Baud
Đây là một tham số đặc trưng của RS232 Tham số này chính là đặc trưng cho quá trình truyền dữ liệu qua cổng nối tiếp RS232 là tốc độ truyền nhận dữ liệu hay còn gọi
Trang 12là tốc độ bit Tốc độ bit được định nghĩa là số bit truyền được trong thời gian 1 giây hay số bit truyền được trong thời gian 1 giây Tốc độ bit này phải được thiết lập ở bênphát và bên nhận đều phải có tốc độ như nhau ( Tốc độ giữa vi điều khiển và máy tínhphải chung nhau 1 tốc độ truyền bit)
Ngoài tốc độ bit còn một tham số để mô tả tốc độ truyền là tốc độ Baud Tốc độ Baud liên quan đến tốc độ mà phần tử mã hóa dữ liệu được sử dụng để diễn tả bit được truyền còn tôc độ bit thì phản ánh tốc độ thực tế mà các bit được truyền.Vì một phần
tử báo hiệu sự mã hóa một bit nên khi đó hai tốc độ bit và tốc độ baud là phải đồng nhất
c) Bit chẵn lẻ hay Parity bit
Đây là bit kiểm tra lỗi trên đường truyền Thực chất của quá trình kiểm tra lỗi khi truyền dữ liệu là bổ xung thêm dữ liệu được truyền để tìm ra hoặc sửa một số lỗi trong quá trình truyền Do đó trong chuẩn RS232sử dụng một kỹ thuật kiểm tra chẵnlẻ
Một bit chẵn lẻ được bổ sung vào dữ liệu được truyền để ch thấy số lượng các bit "1" được gửi trong một khung truyền là chẵn hay lẻ
Một Parity bit chỉ có thể tìm ra một số lẻ các lỗi chả hạn như 1,3,,5,7,9 Nếu như mộtbit chẵn được mắc lỗi thì Parity bit sẽ trùng giá trị với trường hợp không mắc lỗi vì thế không phát hiện ra lỗi Do đó trong kỹ thuật mã hóa lỗi này không được sử dụng trong trường hợp có khả năng một vài bit bị mắc lỗi
Còn cách thức truyền dẫn Phần này tôi không đề cập các bạn vui lòng xem trong giáotrình
3 Sơ đồ ghép nối RS232
Có rất nhiều mạch giao tiếp của RS232 giữa vi điều khiển hay các thiết bị khác.Dưới đây là những mạch giao tiếp thường được dùng
1) Mạch chuẩn giao RS232 dùng IC Max232
Max232 là IC chuyên dùng cho giao tiếp giữa RS232 và thiết bị ngoại vi Max232 là IC của hãng Maxim Đây là IC chay ổn định và được sử dụng phổ biến trong các mạch giao tiếp chuẩn RS232 Giá thành của Max232 phù hợp (12K hay 10K) và tích hợp trong đó hai kênh truyền cho chuẩn RS232 Dòng tín hiệu được thiết kế cho chuẩn RS232 Mỗi đầu truyền ra và cổng nhận tín hiệu đều được bảo vệ chống lại sự phóng tĩnh điện ( hình như là 15KV) Ngoài
ra Max232 còn được thiết kế với nguồn +5V cung cấp nguồn công suất nhỏ
Trang 13Mạch giao tiếp như sau :
Đây là mạch giao tiếp 1 kênh dùng Max232 Còn giao tiếp 2 kênh thì tương tự Mạch này được sử dụng khá nhiều trong chuẩn giao tiếp RS232
Delphi cũng được dùng khá nhiều
Trong trường hợp người dùng mà không biết lập trình giao diện thì có thể sử dụng công cụ trực tiếp của windown Đó là Hyper Terminal Công cụ này cho
ta giao diện khá đơn giản chỉ truyền nhận dữ liệu thông qua cổng RS232 Đối với Win XP thì các bạn có thể vào đây để lấy nó ra : Start/All
Program/Accessories/communations/Hyper Terminal/ Thiết lập thông số quan trọng là ok
Bộ công cụ Hyper Terminal có giao diện khá cổ điện nên người dùng khó kiểm soát được dữ liệu truyền lên nhận xuống như thế nào Do vậy trên mạng bây giờ có bộ công cụ lập trình sẵn cho giao tiếp cổng com Đó là phần mền
Terminal ( download tại hội quán) Phần mền này có giao diện khá hơn Hyper Terminal nhưng nó chỉ có box nhận dữ liệu và truyền dữ liệu
Trang 14Chương II: Giới thiệu chương trình điều khiển
bằng Visual Basic
1 Tổng quan về Visual Basic:
Visual Basic (Visual Basic) là sản phẩm của Microsoft, một thành phần phần của
bộ Visual Studio.
Chức năng: Là một ngôn ngữ lập trình dùng để xây dựng các ứng dụng chạy trên
môi trường Windows.
Đặc điểm: Trực quan, cung cấp các công cụ thuận lợi cho việc tạo các giao diện.
Cài đặt: từ đĩa CD VB6.0, chạy file setup, thực hiện các bước theo hướng dẫn.
Khởi động: Start/Programs/Microsoft Visual Basic 6.0/Microsoft V Basic 6.0
Phiếu New: standard EXE tạo mới một ứng dụng (Project) Phiếu Existing: mở
ứng dụng đã có.
Cửa sổ giao diện của Visual Basic thường có các cửa sổ con, qui định việc ẩn
hiện bằng các thao tác:
- View/Project Explorer: trình bày các thành phần của một ứng dụng.
- View/Properties Window: trình bày các thuộc tính của đối tượng được chọn.
- View/ Form Layout Window: quy định vị trí xuất hiện của cửa sổ kết quả Mỗi ứng dụng là một chương trình bao gồm các chương trình con tương ứng với
Trang 15này Chọn View/Object để thiết kế giao diện cho ứng dụng VB lưu giữ các thông
tin của một ứng dụng bằng nhiều tập tin FRM (nội dung form), VBP (chương trình
chính),…Vì vậy nên tạo thư mục riêng cho từng ứng dụng.
Giao diên chương trình Visual Basic:
2 Các thao tác cơ bản khi xây dựng ứng dụng:
Trang 161 Tạo mới một ứng dụng, mở một ứng dụng sẵn có: thao tác như đã nói trong
mục trên
2 Lưu một ứng dụng: chọn biểu tượng Save Project, đặt tên cho các tập tin FRM,
.VBP Chú ý rằng phục vụ cho cùng một ứng dụng có nhiều tập tin
3 Tạo một đối tượng (ô điều khiển): chọn loại đối tượng trong Toolbox rồi vẽ lên
form
4 Quy định thuộc tính cho đối tượng: chọn đối tượng, chọn thuộc tính, xác lập giá
trị cho thuộc tính trong Properties Window
5 Viết mã lệnh: nhắp đúp lên đối tượng hoặc View/Code rồi viết mã lệnh tương
ứng Trên cửa sổ Code có thể chọn đối tượng và sự kiện của đối tượng trên các
combobox
6 Chạy chương trình: F5 hoặc chọn Run/start hoặc chọn nút start trên thanh công
cụ
7 Thoát khỏi VB: như các ứng dụng khác trên windows
III Các khái niệm cơ bản
1 Đối tượng và các khái niệm liên quan
Hoạt động của một chương trình VB hầu như đều liên quan đến một số các đối
tượng nào đó Các đối tượng này có thể là Form, có thể là các ô điều khiển như
Label, Textbox, Command Button,…Một đối tượng có thể có các thành phần sau:
+ Thuộc tính (property): quy định những tính chất của đối tượng như kích thước,
màu sắc, vị trí, giá trị,…
Cú pháp: <Tên_đối_tượng>.<tên thuộc tính>=<giá trị thuộc tính>
Ví dụ: txt1.text=”Visual Basic”
Các thuộc tính thông dụng của các đối tượng:
- Name: tên để phân biệt với đối tượng khác, dùng để truy xuất đến các giá trịthuộc tính của đối tượng Tên không chứa khoảng trống, không gõ dấu tiếng Việt
Tên của các đối tượng nên đặt kèm theo phía trước là loại của đối tượng đó:Form: frm, TextBox: txt, Command: Cmd, Label: Lbl, ComboBox: Cmb,…đểthuận lợi cho việc khai báo biến về sau