Thiết kế hệ thống gồm hai băng tải đóng gói sản phẩm điều khiển bằng bàn phím và giao tiếp máy tính

MỤC LỤC CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI 4 1.1 Giới thiệu đề tài: 4 1.2 Sơ đồ khối của đề tài: 4 1.3 Chức năng các khối : 4 CHƯƠNG II: GIỚI THIỆU LINH KIỆN 5 2.1Vi điều khiển 8051: 5 2.1.1 Kiến trúc của vi điều khiển 8051: 5 2.1.2 Tìm hiểu về tập lệnh của 89C51: 7 2.2 Nhận dạng xác định chân linh kiện điện tử: 8 1./ Điện trở: 8 2./ Biến trở: 9 3./ Tụ điện: 9 4./ Cuộn dây: 11 5./ Diode: 11 6./ BJT ( Transistor hai mối nối). 12 7./ UJT( Transistor đơn nối). 13 8./ JFET ( Transistor hiệu ứng trường mối nối). 14 9./ THYRISTOR(SCR): 14 10./ TRIAC. 15 CHƯƠNG III: SƠ ĐỒ MẠCH VÀ TÍNH CHỌN LINH KIỆN 16 3.1 Phân tích hoạt động: 16 3.1.1 Nguyên lý chung: 16 3.1.2 Cụ thể: 16 1/ Khối cảm biến: 16 2/ Khối băng chuyền: 16 3/ Khối hiển thị: 16 4/ Khối bàn phím: 17 5/ Điều khiển từ PC: 17 3.2 Sơ đồ nguyên lý & tính chọn linh kiện: 17 3.2.1 Mạch vi điều khiển: 18 1./ Sơ đồ nguyên lý: 18 2./Tính chọn linh kiện: 19 3./Sơ đồ mạch in Layout: 20 3.2.2 Bàn phím: 20 1./Sơ đồ mạch: 20 2./Nguyên lý hoạt động: 21 3./Sơ đồ mạch in Layout: 21 3.2.3 Mạch hiển thị: 21 1./ Sơ đồ nguyên lý: 21 2./ Nguyên lý hoạt động: 21 3./ Tính chọn linh kiện: 22 4./Sơ đồ mạch in Layout: 22 3.2.4 Mạch cảm biến: 23 1./ Sơ đồ nguyên lý: 23 2./ Nguyên lý hoạt động: 23 3./ Tính toán mạch: 23 3.2.5 Mạch điều khiển động cơ: 25 1./ Sơ đồ nguyên lý: 25 2./Nguyên lý hoạt động: 25 3./Tính chọn linh kiện: 25 3.5.6 Mạch giao tiếp máy tính: 26 1./ Sơ đồ nguyên lý: 26 2./ Vai trò: 26 3./Sơ đồ mạch in Layout: 26 CHƯƠNG IV: SƠ ĐỒ KHỐI CHƯƠNG TRÌNH &CHƯƠNG TRÌNH ASSEMBLY 28 4.1. Sơ đồ khối chương trình: 28 1. Chương trình chính: 28 2. Chương trình con đếm sản phẩm & thùng: 30 3. Chương trình con cài đặt sản phẩm & thùng: 31 4. Chương trình con hiển thị: 32 5. Chương trình con bàn phím: 34 4.2. Chương trình Assembly: 35 4.3. Giao tiếp với máy tính: 41

doc40 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3283 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Thiết kế hệ thống gồm hai băng tải đóng gói sản phẩm điều khiển bằng bàn phím và giao tiếp máy tính, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
LỜI NÓI ĐẦU Quá trình công nghiệp hóa hiện đại hóa đất nước đang trong giai đoạn phát triển mạnh mẽ. Những ứng dụng về Vi điều khiển do vậy ngày càng được sử dụng rộng rãi trong mọi ngành sản xuất. Khả năng tự động đếm số lượng sản phẩm và phân loại sản phẩm theo yêu cầu cũng là một trong các ứng dụng quan trọng và phổ biến. Với mong muốn Đề Tài có tính thực tế, chúng em chọn làm đề tài “Thiết kế mạch đếm sản phẩm”. Trong quá trình thực tập tại xưởng điện tử, chúng em đã được sự chỉ bảo tận tình của thầy Lê Hồng Nam , nhưng do đề tài gồm nhiều module và khối lượng tính toán, lập trình tương đối lớn nên không thể tránh khỏi những sai sót. Kính mong các thầy giáo chỉ bảo thêm để giúp chúng em bổ sung và nắm vững hơn vốn kiến thức của mình. Đối với các thiết bị tự động thì các chíp vi điều khiển,các bộ vi xử lý trung tâm đóng vai trò hết sức quan trọng là đầu não điều khiển mọi hoạt động của thiết bị .Tuy nhiên với những thiết bị không đòi hỏi độ phức tạp trong xử lý cao thì các chíp VĐK như họ 8051 ,PIC sử dụng rất tiện lợi ,giá thành thấp. Qua một thời gian tìm hiểu thi công ,thiết kế chúng em đã hoàn thành đề tài này. Đà Nẵng, ngày 1 tháng 3 năm 2010 Nhóm sinh viên thực hiện Nhóm 7-06CDT1 MỤC LỤC CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI 1.1 Giới thiệu đề tài: Thiết kế hệ thống gồm hai băng tải đóng gói sản phẩm điều khiển bằng bàn phím và giao tiếp máy tính 1.2 Sơ đồ khối của đề tài: 1.3 Chức năng các khối : • Giao tiếp máy tính : Dùng giao diện phần mềm lập trình bằng delphi trên máy tính để giao tiếp với mạch điều khiển qua đó điều khiển và kiểm soát số sản phẩm và số thùng. • Mạch điều khiển : Điều khiển tất cả hoạt động của máy, nhận tín hiệu điều khiển từ bàn phím và máy tính để xử lý rồi đưa ra tín hiệu điều khiển cho cơ cấu chấp hành. Kiểm tra tín hiệu trả về của cảm biến để giám sát hoạt động của máy, đưa số liệu ra mạch hiển thị và đưa về máy tính. Đồng thời xử lý tính toán dựa vào các dữ liệu thu về từ cảm biến và các tín hiệu điều khiển để xuất tín hiệu điều khiển cơ cấu chấp hành cho phù hợp với yêu cầu. • Cảm biến : Gồm 2 cảm biến quang trở được bố theo hành trình của sản phẩm và thùng để đếm số thùng và số sản phẩm có đủ hay không. • Bàn phím : Để nhập số sản phẩm và số thùng đồng thời thực hiện một số chức năng điều khiển cụ thể (sẽ được làm rõ ở phần sau). • Hiển thị : Để hiển thị số sản phẩm và số thùng • Cơ cấu chấp hành : Gồm các cơ cấu cơ khí ( 2 băng tải) và 2 động cơ DC để truyền động cho các cơ cấu cơ khí ( 2 băng tải). Một băng tải mang sản phẩm và một băng tải mang thùng. CHƯƠNG II: GIỚI THIỆU LINH KIỆN 2.1Vi điều khiển 8051: 2.1.1 Kiến trúc của vi điều khiển 8051: IC vi điều khiển 8951 thuộc họ MCS51 có các đặc điểm sau : + 4 kbyte Flash. + 128 byte RAM + 4 port I/0 8 bit + Hai bộ định thời 16 bits + Giao tiếp nối tiếp + 64KB không gian bộ nhớ chương trình ngoài + 64 KB không gian bộ nhớ dữ liệu ngoài a.Port0: là port có 2 chức năng, ở trên chân từ 32 đến 39 của MC 8951. Trong các thiết kế cỡ nhỏ không dùng bộ nhớ ngoài, P0 được sử dụng như là những cổng I/O. Còn trong các thiết kế lớn có yêu cầu một số lượng đáng kể bộ nhớ ngoài thì P0 trở thành các đường truyền dữ liệu và 8 bit thấp của bus địa chỉ. b. Port1: là một port I/O chuyên dụng, trên các chân 1-8 của MC8951. Chúng được sử dụng với một múc đích duy nhất là giao tiếp với các thiết bị ngoài khi cần thiết. c. Port2: là một cổng có công dụng kép trên các chân 21 – 28 của MC 8951. Ngoài chức năng I/O, các chân này dùng làm 8 bit cao của bus địa chỉ cho những mô hình thiết kế có bộ nhớ chương trình ROM ngoài hoặc bộ nhớ dữ liệu RAM có dung lượng lớn hơn 256 byte. d. Port3: là một cổng có công dụng kép trên các chân 10 – 17 của MC 8951. Ngoài chức năng là cổng I/O, những chân này kiêm luôn nhiều chức năng khác nữa liên quan đến nhiều tính năng đặc biệt của MC 8951, được mô tả trong bảng sau: bit tên Chức năng chuyển đổi P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RxD TxD T0 T1 Ngõ vào dữ liệu nối tiếp. Ngõ xuất dữ liệu nối tiếp. Ngắt ngoài 0. Ngắt ngoài 1. Ngõ vào TIMER 0. Ngõ vào của TIMER 1. Điều khiển ghi dữ liệu lên bộ nhớ ngoài. Điều khiển đọc bộ nhớ dữ liệu ngoài. Bảng 2.1 : Chức năng của các chân trên port3 e. PSEN (Program Store Enable): 8951 có 4 tín hiệu điều khiển, PSEN là tín hiệu ra trên chân 29. Nó là tín hiệu điều khiển để cho phép truy xuất bộ nhớ chương trình mở rộng và thường được nối đến chân OE (Output Enable) của một EPROM để cho phép đọc các byte mã lệnh của chương trình. Tín hiệu PSEN ở mức thấp trong suốt phạm vi quá trình của một lệnh. Các mã nhị phân của chương trình được đọc từ EPROM qua bus và được chốt vào thanh ghi lệnh của 8951 để giải mã lệnh. Khi thi hành chương trình trong ROM nội PSEN sẽ ở mức cao. f. ALE (Address Latch Enable ): Tín hiệu ra ALE trên chân 30 tương hợp với các thiết bị làm việc với các xử lý 8585, 8088. 8951 dùng ALE để giải đa hợp bus địa chỉ và dữ liệu, khi port 0 được dùng làm bus địa chỉ/dữ liệu đa hợp: vừa là bus dữ liệu vừa là byte thấp của địa chỉ 16 bit . ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trong nữa đầu của chu kỳ bộ nhớ. Sau đó, các đường Port 0 dùng để xuất hoặc nhập dữ liệu trong nữa sau chu kỳ của chu kỳ bộ nhớ. Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và có thể được dùng là nguồn xung nhịp cho các hệ thống. Nếu xung trên 8951 là 12MHz thì ALE có tần số 2MHz. Chân này cũng được làm ngõ vào cho xung lập trình cho EPROM trong 8951. g. EA (External Access): Tín hiệu vào EA trên chân 31 thường được nối lên mức cao (+5V) hoặc mức thấp (GND). Nếu ở mức cao, 8951 thi hành chương trình từ ROM nội trong khoảng địa chỉ thấp (4K). Nếu ở mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng. Người ta còn dùng chân EA làm chân cấp điện áp 21V khi lập trình cho EPROM trong 8951. h. RST (Reset): Ngõ vào RST trên chân 9 là ngõ reset của 8951. Khi tín hiệu này được đưa lên mức cao (trong ít nhất 2 chu kỳ máy), các thanh ghi trong 8951 được đưa vào những giá trị thích hợp để khởi động hệ thống. i.OSC: 8951 có một bộ dao động trên chip, nó thường được nối với thạch anh giữa hai chân 18 và 19. Tần số thạch anh thông thường là 12MHz. j. POWER: 8951 vận hành với nguồn đơn +5V ( 20%. Vcc được nối vào chân 40 và Vss (GND) được nối vào chân 20. 2.1.2 Tìm hiểu về tập lệnh của 89C51: Một số lệnh thường gặp: ACALL addr11 : Gọi chương trình con(gọi đến địa chỉ tuyệt đối). Mô tả: ACALL gọi không điều kiện một chương trình con đặt tại địa chỉ được chỉ ra trong lệnh. Lệnh này tăng nội dung của PC bởi 2 để PC chứa địa chỉ của lệnh kế lệnh ACALL, sau đó cất nội dung 16 bit của PC vào stack(Byte thấp cất trước) và tăng con trỏ stack SP bởi 2. Do vậy chương trình con được gọi phải được bắt đầu trong cùng khối 2K của bộ nhớ chương trình với Byte đầu tiên của lệnh theo sau lệnh ACALL. Các cờ không bị ảnh hưởng. LCALL addr16 : Gọi chương trình con. Chương trình con được gọi phải được bắt đầu trong cùng khối 64K của bộ nhớ chương trình với Byte đầu tiên của lệnh theo sau lệnh LCALL. Các cờ khong bị ảnh hưởng. ADD A,: Cộng Mô tả: ADD Cộng nội dung của một byte ở địa chỉ được chỉ ra trong lệnh với nội dung thanh chứa và đặt kết quả vào thanh chứa. ADD có 4 kiểu định địa chỉ cho toán hạn nguồn: thanh ghi, trực tiếp, thanh ghi gián tiếp hoặc tức thời. AJMP addr11: Nhảy đến địa chỉ tuyệt đối. Đích nhảy đến phải trong cùng khối 2K của bộ nhớ chương trình với byte đầu tiên của lệnh theo sau lệnh AJMP. ANL ,: thực hiện phép toán AND từng bít giữa hai toán hạng được chỉ ra trong lệnh và lưu kết quả vào toán hạn đích. Các cờ không bị ảnh hưởng. CJNE ,,rel : So sánh và nhảy nếu không bằng. Cờ nhớ được set bằng 1 nếu giá trị nguyên không dấu của toán hạn trước nhỏ hơn giá trị nguyên không dấu của toán hạn sau. Ngược lại cờ nhớ bị xoá. CLR bit: Xoá bít. CPL bit: Lấy bù bit. DEC byte: Byte chỉ ra trong lệnh được giảm đi 1, cờ nhớ không bị anhư hưởng. DIV AB: chia số nguyên không dấu 8 bit chứa trong thanh chứa cho số nguyên không dấu 8 bít chứa trong thanh ghi B. Thương số chứa trong thanh chứa A còn dư số chứa trong thanh ghi B. DJNZ ,<rel-addr): giảm byte chỉ ra trong toán hạn đầu trong lệnh và rẽ nhánh đến địa chỉ được chỉ ra bởi toán hạn thứ hai trong lệnh nếu kết quả sau khi giảm khác 0. INC byte: Byte chỉ ra trong lệnh được tăng bởi 1, cờ nhớ không bị anhư hưởng. JB bit,ret : Nhảy nếu bít được set bằng 1. MOV dest-byte>, : Di chuyển nội dung của toán hạng nguồn đến toán hạn đích. MUL AB: Nhân các số nguyên không dấu 8 bit chứa trong thanh chứa A và trong thanh ghi B. Byte thấp của tích số 16 bit được cất trong thanh chứa cong byte cao cất trong thanh ghi B. RL A: 8 bít trong thanh chứa A được quay trái 1 bit. SETB : Set bit bằng 1 2.2 Nhận dạng xác định chân linh kiện điện tử: 1./ Điện trở: a./Công dụng điện trỡ:Dùng để cản trở dòng điện. b./Điện trở ép trên mạch in: Điện trỡ này có cấu tạo bằng than ép, màn thang, dây quấn. Ký hiệu và hình dạng của điện trở Đối với những điện trỡ có công suất bé người ta phân biệt trị số và sai số theo vạch màu. Cách đọc giá trị điện trỡ theo vạch màu được qui định theo bảng sau. Màu Trị số Sai số Đen 0 0% Nâu 1 1% Đỏ 2 2% Cam 3 3% Vàng 4 4% Xanh lá 5 5% Xanh lơ 6 6% Tím 7 7% Xám 8 8% Trắng 9 9% Vàng kim -1 -5% Bạc kim -2 -10% Cách đọc: Vạch màu cuối cùng là vạch sai số. Đối với mạch điện tử dân dụng thì ta không quang tâm tới vạch này. Nhưng đối với mạch có độ chính xác cao thì cần chú ý tới vạch này. Vạch cạnh vạch cuối là vạch là vạch lũy thừa 10 Vạch còn lại là vạch có nghĩa. Ví dụ: Điện trở có 4 vạch màu Ñoû Naâu Cam Vaøng kim Ñieän trôû coù giaù trò: R = 21.103W ± 5% Điện trở có 5 vạch màu: Ñoû Naâu Cam Vaøng kim Ñieän trôû coù giaù trò: R = 217.103W ± 5% Tím Điện trở có công suất lớn thì người ta thường nghi giá trị điện trở và công suất trên thân điện trở. Những hư hỏng thường gặp ở điện trở. Cháy do làm việc quá công xuất. Tăng trị số thường gặp ở điện trở bột thang, do lau ngày hoạt tính bột than biến chất làm thay đổi trị số. Giảm trị số thường xảy ra ở điện trở dây quấn do bị chập vòng. 2./ Biến trở: Dùng để thay đổi giá trị điện trở Loại chỉnh có độ thay đổi rộng: loại này thiết kế dùng cho người sử dụng Loại tinh chỉnh: loại này dùng để chỉnh lại chính xác hoạt động của mạch R 3./ Tụ điện: Dùng để tích phóng điện ứng dụng trong rật nhiều các lĩnh vực khác nhau. Tụ điện biến đổi Ký hiệu. Dùng để điều chỉnh giá trị điện dung theo ý muốn, dùng để vi chỉnh tần số của các mạch dao động, mạch cộng hưởng mạch lọc. Tụ điện có cực tính, thường là các tụ hoá học. - Tụ điện không có cực tính thường là các tụ gốm, tụ thuỷ tinh có ký hiệu như sau: Khi sử dụng tụ điện cần chú ý: Điện dung: Cho biết khả năng chứa điện của tụ. Điện áp: Cho biết khả năng chiệu đựng của tụ. Khi dùng tụ có cực tính thì phải đặt cực tính dương của tụ ở điện áp cao còn cực tính âm ở nơi điện áp thấp. Cách đọc giá trị của tụ. 203 25 200 50WV 0.1 25 C= 20.103PF U = 25V C= 200PF U = 50V C= 0.1mF U = 25V         Trường hợp trên tụ có ghi giá trị, ký hiệu mà tận cùng là một chữ cái, đơn vị đo tính bằng pF (pico farad), phương pháp xác định giá trị thực hiện như sau:         - Hai chữ số đầu chỉ trị số cho điện dung của tụ         - Chữ số thứ ba (kế tiếp) xác định hệ số nhân         - Chữ cái cuối cùng xác định sai số Các chữ cái xác định sai số tuân theo quy ước sau đây: F G J K M 1% 2% 5% 10% 20%         Ví dụ: trên tụ điện ceramic, ta đọc được giá trị như sau: 473J hay 104k.         Giá trị của tụ được xác định như sau:                473J ≈ 47. 103 pF    ± 5%        ≈ 0,047mF ± 5%                104K ≈ 10 .104 pF   ± 10%      ≈ 0,1mF ± 10% Cách đo và kiểm tra tụ: Ta bật đồng hồ VOM để đo kiểm tra tụ hoạt động tốt hay xấu. Tuỳ theo giá trị của tụ mà ta bật thang đo khác nhau để kiểm tra. - Đo hai lần có đổi que: Nếu kim vọt lên và trả về hết thì kha năng nạp xã của tụ còn tốt. Nếu kim vọt lên thì tụ bị đánh thủng. Nếu kim vọt lên nhưng tra về không hết thì tụ bị rĩ. Nếu kim vọt lên và kim trả về lờ đờ thì tụ bị khô. Nếu kim không lên thì tụ đứt. 4./ Cuộn dây: Dùng để tạo ra cảm ứng điện từ. Phân loại cuộn cảm: Cuộn cảm có rất nhiều loại, kích cỡ đa dạng tùy theo yêu cầu sử dụng. Đa số các loại cuộn cảm vẫn là cuộn dây, quấn trõa lõi thép kỹ thuật. Cuộn cảm có trị số thay đổi Cuộn cảm có trị số không thay đổi Khi sử dụng cuộn dây cần chú ý sự chiệu đựng dòng điện đi qua nó: nếu tiết diện dây lớn thì dòng điện chiệu đựng cao hơn. Cách kiểm tra hư hỏng của cuộn dây: Ta vặn thang đo Rx1 hoặc R x 10 để xác định cuộn dây có bị đức hay không. Khi chạm cuộn dây thì ta chỉ có kiểm tra bằng thực tế. 5./ Diode: a./Diode nắn điện: P N Diode chỉ hoạt động dẫn dòng điện từ cực A sang cực K ( Khi tiếp xúc PN được phân cực thuận). Khi phân cực nghịch vược điện áp chịu đựng thì sẻ phá vở mối liên kết, diode bị nối tắt. Do đó khi lắp ráp mạch sử dụng diode ta nên chú ý đến điện áp ngược và dòng tải của diode. b./Diode zener: Diode luôn làm việc ở chế độ phân cực ngược. Để diode zener tốt ta phải có điện trở định thiên để cho diode làm việc ở dòng trung bình. Khi sử dụng ta chú ý tới áp chiệu đựng và dòng tải. Cách kiểm tra hư hỏng: Ở thang đo Rx1 ta tiến hành do hai lần có đảo que đo. Nếu quan sát thấy kim đồng hồ một lần kim lên hết. Một lần kim không lên thì Diode hoạt động tốt. Nếu quan sát thấy kim đồng hồ một lần kim lên hết. Một lần kim lên 1/3 vạch thì Diode bị rỉ. Nếu quang sát hai lần đo kim đều lên hết thì diode bị thủng. Nếu quang sát hai lần đo kim đều không lên hết thì diode bị đứt. 6./ BJT ( Transistor hai mối nối). Cấu tạo bênh trong và ký hiệu: BJT thuận(PNP). P N P E C B BJT nghịch(NPN). N P N E C B Xác định chân BJT. Dựa vào cấu tạo bênh trong của BJT mà suy ra cách xác định chân của BJT Ta đặt đồng hồ VOM ở thang đo 1k hoặc100. Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu kim lên đều thì ta đảo hai que đo với nhau và đo như trên thì kim không lên thì chân cố định là chân B. Ở trường hợp que còn lại đảo gữa hai chân còn lại nếu kim lên đều, que ở chân cố định là que đen thì BJT loại NPN, nếu que đỏ ở chân cố định thì đó là loại PNP. BJT(NPN): Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân B), dùng điện trở(hoặc ngón tay) để nối gữa que đen với cực B nếu kim lên thì chân tương ứng với que đen là chân c chân còn lại là chân E. Khi kim không lên thi ta đảo ngược que lại và kiểm tra như trên. BJT(PNP): Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân B), dùng điện trở(hoặc ngón tay) để nối gữa que đen với cực B nếu kim lên thì chân tương ứng với que đen là chân E chân còn lại là chân C. Khi kim không lên thi ta đảo ngược que lại và kiểm tra như trên. Đối với BJT công suất thì khi chế tạo người ta đã có điên trở lót hoặc điện trở và diode lót bênh trong thì khi đo cần chú ý. P N B2 B1 E Caáu taïo beânh trong UJT Kyù hieäu cuûa UJT 7./ UJT( Transistor đơn nối). Cấu tạo bên trong và ký hiệu: Xác định chân của UJT. Dựa vào cấu tạo bênh trong của UJT mà suy ra cách xác định chân của UJT Ta đặt đồng hồ VOM ở thang đo 1k hoặc100. Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu kim lên đều thì ta đảo hai que đo với nhau và đo như trên thì kim không lên thì chân cố định là chân E. Ta đặt que đo vào hai chân còn lại, ta nối một điện trở từ que đen đến chân E nếu kim vọt lên thì chân ứng với que đen là chân B2 . chân còn lại là chân B1. 8./ JFET ( Transistor hiệu ứng trường mối nối). Loại này có tính năng giống như BJT nhưng có ưu điểm hơn là tổng trở ngõ vào và ngõ ra lớn nên có độ nhạy và độ nhiễu đảm bảo hơn BJT Cấu tạo và ký hiệu: Kênh dẫn N: N P P S G D Kênh dẫn loại P P N N S G D Xác định chân JFET Dựa vào cấu tạo bênh trong của JFET mà suy ra cách xác định chân của JFET Ta đặt đồng hồ VOM ở thang đo 1k hoặc100. Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu kim lên đều thì ta đảo hai que đo với nhau và đo như trên thì kim không lên thì chân cố định là chân G. Ở trường hợp que còn lại đảo gữa hai chân còn lại nếu kim lên đều, que ở chân cố định là que đen thì JFET kênh N, nếu que đỏ ở chân cố định thì đó là JFET kênh P. JFET kênh N: Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân E), Dùng tay kích vào chân G nếu kim vọt lên thì que đen ứng với cực D, que đỏ ứng với cực S. JFET kênh P: Ta đặt hai que đo vào hai chân còn lại(Không đặt ở chân E), Dùng tay kích vào chân G nếu kim vọt lên thì que đen ứng với cực S, que đỏ ứng với cực D. 9./ THYRISTOR(SCR): Cấu tạo và hình dạng: P N P N A K G Cách xác định chân của SCR. Văn VOM ở thang Rx1 Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu kim không lên thì ta đảo hai que đo với nhau và đo như trên kim không lên thì chân cố định là chân A. Ta đặt que đen vào chân A và que đỏ vào một trong hai chân còn lại, sau đó lấy dây nối gữa chân A kích với chân còn lại ( chân không đặt que đỏ). Nếu kim lên và thả ra kim tự giữ thì chân đó là chân G. Chân còn lại là chân K. 10./ TRIAC. a./Cấu tạo và hình dạng: Cách xác định chân của TRIAC. Văn VOM ở thang Rx1 Ta đặt que đo vào một chân cố định, còn que còn lại đảo gữa hai chân còn lại nếu kim không lên thì ta đảo hai que đo với nhau và đo như trên kim không lên thì chân cố định là chân T2. Ta đặt que đen vào chân A và que đỏ vào một trong hai chân còn lại, sau đó lấy dây nối gữa chân T2 kích với chân còn lại ( chân không đặt que đỏ). Nếu kim lên và thả ra kim tự giữ thì chân đó là chân G. Chân còn lại là chân T1. b./Phương pháp nhận diện chân của IC. Muốn nhận dạng vị trí chân IC ta đều phải dựa vào sổ tay của IC. Tuy nhiên, ta cần phải biết phương pháp xác định vị trí cho chân số 1 của IC. Khi nhìn thẳng từ trên xuống IC, ta nhận thấy trên IC ở một phía trên thân sẽ khuyết ở một đầu một phần bán nguyệt, đôi khi ở phía này có thể in vạch thẳng sơn trắng, hoặc có điểm một chấm trắng phía trái.Vị trí chân phía chấm trắng bên trái xác định chân số 1, sau đó tuần tự đếm ngược chiều kim đồng hồ ta sẽ tìm được các chân còn lại. Tùy thuộc vào các tính năng kỹ thuật ghi trong sổ tay, chức năng của mỗi chân tương ứng với số thứ tự của chân đó. Trong hướng dẫn thực tập này, chúng tôi chỉ trình bày các dạng chân ra cho một số IC thông dụng như IC LM555 và IC741.    Dạng chân ra của IC LM555         Chân 1: Ground (GND)         Chân 2: Trigger (TRG): kích khởi Chân 3: Output (OUT): ngõ ra         Chân 4: Reset         Chân 5: Cont         Chân 6: Threshold (THRES)         Chân 7: Discharge (DISCH)         Chân 8: VCC (nguồn)   Dạng chân ra của IC LM741        Chân 1: Offset null: điều chỉnh 0        Chân 2: Inverting input: ngõ vào đảo        Chân 3: Non-Inverting input: ngõ vào không đảo        Chân 4: V-        Chân 5: Offset null        Chân 6: Output: ngõ ra        Chân 7: V+        Chân 8: NC (Normal close): chân bỏ trống CHƯƠNG III: SƠ ĐỒ MẠCH VÀ TÍNH CHỌN LINH KIỆN 3.1 Phân tích hoạt động: 3.1.1 Nguyên lý chung: Thông qua hệ thống cảm biến thu phát hồng ngoại sẽ đưa tín hiệu đầu vào AT89C52,sau khi được xử lý tại vi điều khiển(chương trình được lập trình bằng ASM) sẽ đưa tín hiệu đầu ra điều khiển 2 hệ thống băng chuyền thực hiện việc đếm số thùng và số sản phẩm trong 1 thùng. Song song với quá trình hoạt động của mạch,máy tính sẽ thực hiện giám sát và điều khiển thông qua dữ liệu được gởi xuống vi điều khiển bằng cổng COM 3.1.2 Cụ thể: 1/ Khối cảm biến: Trên mỗi băng chuyền thùng và sản phẩm,sẽ đặt 1 hệ thống cảm biến gồm 1 led hồng ngoại phát và 1 photodiode thu,khi có sản phẩm(thùng) đi qua,hệ thống sẽ gởi tín hiệu mức 0 báo cho VĐK biết, căn cứ vào chương trình đã được nạp,VĐK sẽ đưa ra chỉ thị điều khiển dừng hay khởi động băng chuyền để thực hiện việc đếm số sản phẩm(thùng). 2/ Khối băng chuyền: Gồm 2 băng chuyền: một băng chuyền cho thùng chạy,và một cho sản phẩm chạy 3/ Khối hiển thị: Gồm 4 led 7 đoạn (2 led cho số thùng và 2 led cho số sản phẩm)sẽ hiển thị số sản phẩm và thùng cài đặt,cũng như số sản phẩm và số thùng trong quá trình đếm. 4/ Khối bàn phím: Phím 0- 9: nhập số sản phẩm(thùng) cài đặt Phím 10: Start Phím 11: Cài đặt Phím 12: Thoát khỏi cài đặt Phím 13: Pause Phím 14: Bắt đầu cài đặt thùng Phím 15: Stop 5/ Điều khiển từ PC: Chương trình điều khiển được viết bằng Delphi. Máy tính sẽ gởi tín hiệu khởi động, gởi số sản phẩm và thùng cài đặt xuống VĐK thông qua cổng COM. Song song với quá trình gởi dữ liệu thì PC cũng sẽ nhận dữ liệu đếm từ VĐK và hiển thị lên màn hình điều khiển. 3.2 Sơ đồ nguyên lý & tính chọn linh kiện: 3.2.1 Mạch vi điều khiển: 1./ Sơ đồ nguyên lý: 2./Tính chọn linh kiện: Hai chân 18&19 của chip AT89C51 được nối với tụ thạch anh tần số 12 MHz tạo dao động trên chip. Chọn C1=C2=33pF a. Tính toán điện trở kéo lên ở các port0, port1, port2: + VOL=0.45(V),IOL=1.6(mA), IIL=0.05 mA RPmin= + VOH=2.4(V), IOH=0.8(mA), IIH=0.65(mA) RPmax= Vậy điều kiện chọn điện trở kéo lên: 2.87(K) ≤ RP≤ 17.3(K) Chọn điện trở kéo lên: RP=10(K) b. Tính điện trở mạch reset hệ thống: Ngõ vào reset (RST) – mức cao trên chân này trong hai chu kì máy trong khi bộ dao động đang hoạt động sẽ reset AT89C51: VIHmin= 0.7VCC=0.7*5=3.5(V) VIHmax=VCC+0.5=5+0.5=5.5(V), ITL=0.65(mA) RRST= Chọn RRST=8.2(K) Để Reset chip cần đặt vào chân 89C51 ít nhất hai chu kì máy ở mức cao và sau đó trả về mức thấp.Do sử dụng mạch tạo dao động thạch anh bên ngoài 12MHz nên mỗi chu kì máy mất 1 , RST ở mức cao trên cầnR1*C3 Chọn C3 =10 3./Sơ đồ mạch in Layout: 3.2.2 Bàn phím: 1./Sơ đồ mạch: 2./Nguyên lý hoạt động: Các cột của ma trận phím nối với các bit thấp của port1: cột 0 (ứng các phím nhấn 0, 4, 8, C) nối đến chân P1.0. cột 1 (ứng các phím nhấn 1, 5, 9, D) nối đến chân P1.1 cột 2 (ứng các phím nhân 2, 6, A, E) nối đến chân P1.2 cột 3 (ứng các phím nhấn 3, 7, B, F) nối đến chân P1.3 Các hàng của ma trận phím nối với các bit thấp của port1: hàng 0 (ứng các phím nhấn 0, 1, 2, 3) nối đến chân P1.4 hàng 1 (ứng các phím nhấn 4, 5, 6, 7) nối đến chân P1.5 hàng 2 (ứng các phím nhấn 8, 9, A, B) nối đến chân P1.6 hàng 3 (ứng các phím nhấn C, D, E, F) nối đếb chân P1.7 Khi có một phím được ấn thì bit ứng với hàng tương ứng bằng 0. 3./Sơ đồ mạch in Layout: 3.2.3 Mạch hiển thị: 1./ Sơ đồ nguyên lý: 2./ Nguyên lý hoạt động: Tín hiệu ngõ vào chia làm hai phần: - 4 bit thấp cung cấp dữ liệu cho mạch giải mã BCD sang 7 đoạn dùng 74LS47 để cung cấp dữ liệu cho đèn LED 7 đoạn hiển thị số thập phân. - 4 bit cao dùng để điều khiển khóa điện tử: cung cấp nguồn quyết định đèn LED 7 đoạn nào sẽ sáng. 3./ Tính chọn linh kiện: Chọn trở R8( đưa áp vào các chân 3,4,5 của 7447) là 1K. Để tính chính xác ta coi Led như một động cơ một chiều và sử dụng công thức Để đơn giản hơn ta xem LED 7 đoạn gồm 7 LED đơn sử dụng dòng 5 mA. Vậy dòng cần cung cấp cho LED là Chọn ,thì T=14 ms Suy ra Ta có Chọn BJT là 2SA1015 với Dòng . Ta chọn Ngõ ra P0.5 ở mức thấp thì Q1 dẫn lúc đó VOl=0.45V(mức thấp) R9=(Vcc-VO1-VBEQ1)/IBQ1=(5-0.45-0.6)/5.28=0.75K Ta chọn R9=R10=R11=R10=1K 4./Sơ đồ mạch in Layout: 3.2.4 Mạch cảm biến: 1./ Sơ đồ nguyên lý: 2./ Nguyên lý hoạt động: Mạch gồm 2 cặp cảm biến thu phát hồng ngoại. Khi không có sản phẩm đi qua, LED thu sẽ nhận được tín hiệu từ LED phát lúc đó điện trở của LED thu sẽ rất bé nên Vp > VN, nên có tín hiệu ra ở OPAMP, LED báo hiệu sáng. Ngược lại, khi có sản phẩm đi qua LED thu không nhận được tín hiệu từ LED phát, điện trở của LED thu rất lớn do đó điện áp đặt vào ngõ vào âm của OPAMP gần như bằng 0, do đó điện áp ngõ ra ở mức cao, LED báo hiệu tắt. Tín hiệu đưa về P320 và P3.3 để xử lý. 3./ Tính toán mạch: Khi thu ánh sáng RLEDthu=1K , khi không thu ánh sáng RLEDthu= 12K Nên chọn 1K<R5 <12K. Chọn R2= R5 =10K Khi không thu ánh sáng: VN= Khi thu được ánh sáng: VN= Chọn biến trở VR1= VR2 loại 2K IVR1= 5/2 = 2.5mA. Khi không thu được ánh sáng thì ngõ ra của LM324 ở mức thấp, ngược lại khi thu được ánh sáng ngõ ra LM324 ở mức cao. Do đó khi chỉnh biến trở gọi x là thành phần gần với phía nối mass thì Khi không thu được ánh sáng Vx< 2.76V Khi thu được ánh sáng Vx> 0.455V Do đó ta có : 0.455 <Vx< 2.76V Chọn dòng qua Led phát là 20mA vậy: R1 Chọn R1 = R4 = 3.2.5 Mạch điều khiển động cơ: 1./ Sơ đồ nguyên lý: 2./Nguyên lý hoạt động: Khi P3.2 tích cực mức 0 thì Q8 dẫn kích Q7 dẫn làm cho rơle hoạt động,động cơ quay. 3./Tính chọn linh kiện: Chọn Q7 : 2SC2073 có VCES=1.5V, Chọn dòng qua rơle 1A Để Q7 dẫn bảo hoà : IBQ7 > Chọn IBQ7 = 16mA IBQ7 = ICQ8= 16mA Chọn Q8 : 2SA1015 có VCEs = -0.1V, R27= Chọn R25 = R27 = 220 Để Q8 dẫn bão hoà : IBQ8 > Chọn IBQ8 = 0.3mA. Ngõ ra P3.2 mức thấp thì Q7 dẫn lúc đó: VOL=0.45V R28 = Chọn R26 = R28 = 100 3.5.6 Mạch giao tiếp máy tính: 1./ Sơ đồ nguyên lý: 2./ Vai trò: MAX232 đóng vai trò trung gian giao tiếp giữa cổng COM và chip AT89C51. Tín hiệu từ chân 3 cổng COM được đưa đến đầu vào thu R1IN của MAX232, đầu ra bộ thu R1OUT của MAX232 nối với chân ngõ vào dữ liệu nối tiếp RxD của AT89C51. Tín hiệu từ ngõ xuất dữ liệu nối tiếp TxD của chip AT89C51 đưa đến đầu vàobộ phát T1IN của MAX232, đầu ra bộ phát T2OUT của chip AT89C51 được nối đến chân 3 của cổng COM. Bảng trạng thái: T1IN T1OUT 0 1 1 0 R1IN R1OUT 0 1 1 0 3./Sơ đồ mạch in Layout: CHƯƠNG IV: SƠ ĐỒ KHỐI CHƯƠNG TRÌNH &CHƯƠNG TRÌNH ASSEMBLY 4.1. Sơ đồ khối chương trình: 1. Chương trình chính: 2. Chương trình con đếm sản phẩm & thùng: 3. Chương trình con cài đặt sản phẩm & thùng: */Thuật toán lưu thùng & sản phẩm: 4. Chương trình con hiển thị: */Thuật toán chuyển 1 số thành hàng chục &hàng đơn vị: 5. Chương trình con bàn phím: 4.2. Chương trình Assembly: phim equ 50h so_sp equ 51h sp_cd equ 52h so_th equ 53h th_cd equ 54h chuc_sp equ 55h dvi_sp equ 56h chuc_th equ 57h dvi_th equ 58h cb_thung bit P1.2 cb_sp bit P1.3 org 00h ljmp setup org 30h setup: mov so_sp,#0h ;cai dat cac thong so ban dau mov sp_cd,#03h mov so_th,#0h mov th_cd,#03h mov chuc_sp,#00 mov dvi_sp ,#00 mov chuc_th,#00 mov dvi_th ,#00 acall startcom main: acall hthi_dem begin: jnb RI,kiem_tra_tiep_1 ;co du lieu tu PC ko? acall nhan_dl cjne A,# 1,kiem_tra_tiep_0 ; ktra co start ko? acall demsanpham kiem_tra_tiep_0: acall nhan_dl_cai_dat acall cho_start acall demsanpham kiem_tra_tiep_1: acall kt_phim jnb 17,main clr 17 mov A,phim cjne A,#10,ktr_cd acall demsanpham ;neu ko co cai dat thi kiem tra cong COM ktr_cd: cjne A,#11,main acall caidat acall cho_start acall demsanpham ;-----------------chuong trinh con NHAN DU LIEU CAI DAT---------------------- nhan_dl_cai_dat: acall nhan_dl mov sp_cd,A jnb RI,$ acall nhan_dl mov th_cd,A ret ;---------------chuong trinh con DEM THUNG va SAN PHAM--------------------------------- demsanpham: mov so_th,#0 mov so_sp,#0 demsanpham_1: acall kd_thung kiemtr_thung: clr 13 jnb cb_thung,tieptuc1 kt_1: LCALL KTR_STOP acall kd_thung acall hthi_dem jb cb_thung,kt_1 setb 13 tieptuc1: LCALL KTR_STOP acall kd_thung acall hthi_dem jnb 13,kiemtr_thung acall kd_sp inc so_th mov so_sp,#0 acall phat_dl acall dem_sp mov A,so_th cjne A,th_cd,demsanpham_1 acall stop ajmp main ret ;----------------------chuong trinh con DEM SO SAN PHAM TRONG 1 THUNG------------------- dem_sp: clr 11 jnb cb_sp,tieptuc21 kt_2: LCALL KTR_STOP acall kd_sp acall hthi_dem jb cb_sp,kt_2 setb 11 tieptuc21: LCALL KTR_STOP acall kd_sp acall hthi_dem jnb 11,dem_sp inc so_sp acall phat_dl mov A,so_sp cjne A,sp_cd,dem_sp ret ;-----khi khoi dong bang chuyen thung thung thi bang chuyen san san dung va nguoc lai----- kd_thung: setb P1.1 clr P1.0 ret kd_sp: clr P1.1 setb P1.0 ret stop: setb P1.1 setb P1.0 ret ;-----------------chuong trinh con CAI DAT--------------- caidat: caidat_sp: ;cai dat san pham acall kt_phim jnb 17,ht_sp clr 17 mov a,phim cjne a,#14,nhap_sp sjmp caidat_th nhap_sp: cjne a,#12,luu_sp sjmp exit1 luu_sp: mov chuc_sp,dvi_sp mov dvi_sp,phim mov b,#10 mov a,chuc_sp mul ab add a,dvi_sp ;sp=ch_sp*10+dv_sp mov sp_cd,a ht_sp: acall hthi sjmp caidat_sp caidat_th: ;cai dat thung acall kt_phim jnb 17,ht_th clr 17 mov a,phim cjne a,#14,nhap_th sjmp caidat_th nhap_th: cjne a,#12,luu_th sjmp exit1 luu_th: mov chuc_th,dvi_th mov dvi_th,phim mov b,#10 mov a,chuc_th mul ab add a,dvi_th ;sp=ch_th*10+dv_th mov th_cd,a ht_th: acall hthi sjmp caidat_th exit1: nop ret ;-----------------chuong trinh con BAN PHIM--------------------- kt_phim: ;chuong trinh con chong nhieu mov r3,#50 L1: acall qphim jnb 10,toi djnz r3,L1 L2: mov r3,#50 L3: acall qphim jb 10,L2 djnz r3,L3 setb 17 mov phim,r6 toi: ret qphim: ;chuong trinh con quet phim mov A,#0FEh mov r1,#0 scan_row: mov P0,A mov R4,A jnb p0.4,row_0 jnb p0.5,row_1 jnb p0.6,row_2 jnb p0.7,row_3 mov a,R4 rl a inc R1 cjne R1,#4,scan_row clr 10 ajmp exit_qp row_0: mov a,R1 add a,#0 setb 10 mov R6,a ajmp exit_qp row_1: mov a,R1 add a,#4 setb 10 mov R6,a ajmp exit_qp row_2: mov a,R1 add a,#8 setb 10 mov R6,a ajmp exit_qp row_3: mov a,R1 add a,#12 setb 10 mov R6,a ajmp exit_qp exit_qp: ret ;--------------------chuong trinh con HIEN THI---------------- hthi: mov a,dvi_sp add a,#070H mov P2,a acall delay mov a,chuc_sp add a,#0B0H mov P2,a acall delay mov a,dvi_th add a,#0D0H mov P2,a acall delay mov a,chuc_th add a,#0E0H mov P2,a acall delay ret ;chuong trinh con tao tre delay: mov r0,#200 djnz r0,$ ret ;chuong trinh hien thi dem hthi_dem: mov a,so_sp mov b,#10 div ab mov chuc_sp,a mov dvi_sp,b mov a,so_th mov b,#10 div ab mov chuc_th,a mov dvi_th,b acall hthi ret ;chuong trinh startcom startcom: MOV TMOD,#20H MOV TH1,#-3 MOV SCON,#52H SETB TR1 RET ;chuong trinh nhan du lieu nhan_dl: JNB RI,$ CLR RI MOV A,SBUF RET ;chuong trinh phat du lieu phat_dl: JNB TI,$ CLR TI MOV A,SO_TH MOV SBUF,A JNB TI,$ CLR TI MOV A,SO_SP MOV SBUF,A RET ;----------------chuong trinh con CHO_START-------------------- cho_start: loop: acall hthi_dem jnb RI,loopb acall nhan_dl cjne A,#1,loop ;co start? ajmp skip loopb: acall kt_phim jnb 17,loop clr 17 mov a,phim cjne a,#10,loop ;co start? skip: ret ;---------------chuong trinh con KIEM TRA STOP------------------ ktr_stop: acall kt_phim jnb 17,dungbc clr 17 mov A,phim CJNE A,#13,loop11 ACALL STOP acall cho_start loop11: cjne a,#15,exit acall stop ajmp begin dungbc: JNB RI,exit CLR RI MOV A,SBUF CJNE A,#2,ktr999 ktr999: ACALL STOP ACALL cho_start EXIT: RET END 4.3. Giao tiếp với máy tính: unit DSP; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Menus, CPort, jpeg, MPlayer; type TForm1 = class(TForm) GroupBox1: TGroupBox; Label1: TLabel; cdth: TEdit; Label2: TLabel; cdsp: TEdit; Buttonsend: TButton; GroupBox2: TGroupBox; Label3: TLabel; sothung: TEdit; Label4: TLabel; sosanpham: TEdit; GroupBox3: TGroupBox; GroupBox4: TGroupBox; thoigian: TEdit; GroupBox5: TGroupBox; Memo1: TMemo; Buttonclear: TButton; Buttonsetting: TButton; Buttonopen: TButton; GroupBox6: TGroupBox; MainMenu1: TMainMenu; Timer1: TTimer; ComPort: TComPort; ngaythang: TEdit; gio: TLabel; ngay: TLabel; Buttonstart: TButton; Buttonstop: TButton; procedure Timer1Timer(Sender: TObject); procedure ButtonsettingClick(Sender: TObject); procedure ButtonopenClick(Sender: TObject); procedure ButtonclearClick(Sender: TObject); procedure ButtonsendClick(Sender: TObject); procedure comportRxChar(Sender: TObject; Count: Integer); procedure ButtonstartClick(Sender: TObject); procedure ButtonstopClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} // THOI GIAN procedure TForm1.Timer1Timer(Sender: TObject); var ngay: Tdate; begin thoigian.Text:=timetostr(now()); ngay:=now(); ngaythang.Text:= datetostr(ngay); end; // THIET LAP THONG SO CONG COM procedure TForm1.ButtonsettingClick(Sender: TObject); begin comport.ShowSetupDialog; if messagedlg('Chon thong so moi roi nhap Ok.Chon Cancel de lay lai thong so cu',mtConfirmation,[mbok,mbcancel],0)=mrok then begin Buttonopenclick(Sender); memo1.Text:='Cong COM da duoc mo voi thong so da thiet lap'; end end; // MO CONG COM procedure TForm1.ButtonopenClick(Sender: TObject); begin if comport.Connected then begin messagedlg('Cong COM dang mo'+ chr(13) +'Nhan Ok de dong cong COM va mo lai cong COM.',mtwarning,[mbok],0); comport.Close; end; comport.Open; end; // XOA GHI CHU procedure TForm1.ButtonclearClick(Sender: TObject); begin memo1.Text:=''; cdth.Text:=''; cdsp.Text:=''; end; // GUI DU LIEU procedure TForm1.ButtonsendClick(Sender: TObject); var i:byte; th,sp:integer; begin messagebeep(0); if (cdth.Text='')or(strtoint(cdth.Text)>99)or (strtoint(cdth.Text)<1) then begin messagedlg('Ban can nhap so thung(1-99)vao.',mtwarning,[mbok],0); exit; end else begin th:=strtoint(cdth.Text); if (cdsp.Text='')or(strtoint(cdsp.Text)>99)or(strtoint(cdsp.Text)<1) then begin messagedlg('Ban can nhap so san pham(1-99) vao.',mtwarning,[mbok],0); exit; end else begin sp:=strtoint(cdsp.Text); end ; end ; comport.Write(th,1); comport.Write(sp,1); end; // NHAN DU LIEU procedure TForm1.comportRxChar(Sender: TObject; Count: Integer); var dlieu:string; begin comport.ReadStr(dlieu,count); sothung.Text:=inttostr(ord(dlieu[1])); sosanpham.Text:=inttostr(ord(dlieu[2])); end; // KHOI DONG procedure TForm1.ButtonstartClick(Sender: TObject); begin if messagedlg('Ban muon khoi dong bang chuyen?',mtconfirmation,[mbok,mbcancel],0)=mrok then Begin comport.WriteStr(chr(1)); memo1.Text:='Bang chuyen da duoc khoi dong'; end end; //DUNG procedure TForm1.ButtonstopClick(Sender: TObject); begin if messagedlg('Ban muon dung bang chuyen?',mtconfirmation,[mbok,mbcancel],0)=mrok then begin comport.WriteStr(chr(2)); memo1.Text:='bang chuyen da dung hoat dong'; end end; end.

Các file đính kèm theo tài liệu này:

  • docThiết kế hệ thống gồm hai băng tải đóng gói sản phẩm điều khiển bằng bàn phím và giao tiếp máy tính.doc