Giáo trình điện tử công nghiệp

1/ Chương trình sử dụng các lệnh:CLO, MOV, OUT, JMPvà END. Động cơ bước trong chương trình mô phỏng được điều khiển bằng cách gởi dữ liệu xuất ra port 5. Đây là loại động cơ bước có 4 cuộn dâyở stator được điều khiển theo dạng đơn cực nửa bước, nối vào port 5 của hệ vi xử lý nên để điều khiển ta dùng lệnh OUT 5. Chỉ có 4 bit thấp trong port này được sử dụng điều khiển động cơ bước, 4 bit cao không sử dụng. Ở đây có chương trình ví dụ: baitap02.asm. Ta có thể chép chương trình từ trang giúp đỡ và dán vào trong trình đang soạn thảo. Để chạy chương trình, ta click vào biểu tượng Step lập lại nhiều lần để chạy từng bước hay nhấn vào Run để chạy trọn vẹn chương trình. Để ngừng chương trình ta click vào stop. Khi chương trình đang chạy, click vào RAM - Source hay RAM - Hex hay RAM - ASCII. Ở đó ta sẽ thấy được sự thay đổi luân phiên các nội dung của việc truy xuất bộ nhớ RAM. Nhấn vào tab List - file để thấy mã máy được biên dịch bởi chương trình mô phỏng. 2/ Các nhãn và lệnh JMP: Nhãn đánh dấu các vị trí thì được sử dụng bởi các lệnh nhảy. Tất cả các lệnh trong chương trình này được lập lại liên tục cho đến khi nhấn Stop. Tên nhãn phải bắt đầu với 1 chữ cái hay 1 ký tự. Tên nhãn không được bắt đầu bằng 1 ký số. JMP Start làm cho chương trình nhảy về và làm lại các lệnh từ lúc đầu. Cuối nhãn phải có dấu 2 chấm. Ví dụ: Start:

pdf127 trang | Chia sẻ: aloso | Lượt xem: 2619 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Giáo trình điện tử công nghiệp, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ật sau: - Thời điểm (0, t0): tổ hợp các khoá bán dẫn 1, 6, 2 dẫn điện. - Thời điểm (t0, t1): tổ hợp các khoá bán dẫn 1, 3, 2 dẫn điện. - Thời điểm (t1, t2): tổ hợp các khoá bán dẫn 4, 3, 2 dẫn điện. - Thời điểm (t2, t3): tổ hợp các khoá bán dẫn 4, 3, 5 dẫn điện. - Thời điểm (t3, t4): tổ hợp các khoá bán dẫn 4, 6, 5 dẫn điện. - Thời điểm (t4, t5): tổ hợp các khoá bán dẫn 1, 6, 5 dẫn điện. Tương ứng với mỗi trạng thái dẫn của khoá bán dẫn sẽ tạo ra các tổ hợp điện áp như trên hình 4.29 (b). Hình 4.29: (a) Nghịch lưu 6 bước (b) Đồ thị sóng dạng điện áp ________________________________________________________________________________________________________ Trang 95 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Qua hình 4.29 (b) ta nhận thấy phương pháp điều khiển sáu bước tạo nên sự dịch chuyển nhảy cấp tuần hoàn giữa các khoá bán dẫn tạo nên sáu bước trong một chu kỳ nghịch lưu, dẫn tới điện áp ngõ ra xoay chiều lệch pha với nhau các góc 120o. 4.6.4 Phương pháp điều chế vector không gian Nếu như với phương pháp PWM kinh điển cần có ba bộ điều chế riêng biệt cho từng pha (hình 4.25) và trong hệ thống phải tạo ra được một hệ thống điện áp 3 pha hình sin đối xứng thì trong phương pháp điều chế vector sử dụng kỹ thuật số nên tín hiệu chủ đạo lẫn sóng răng cưa được thay thế bằng tín hiệu số, do đó mạch điện sẽ đơn giản hơn. Tuy phần cứng có thể ít đi nhưng phương pháp này lệ thuộc rất nhiều vào giải thuật điều khiển của phần mềm. Do nguyên lý hoạt động của phương pháp này khá phức tạp nên ở đây chỉ tóm tắt như sau: Giống như nguyên tắc tạo từ trường quay trong máy điện xoay chiều 3 pha có ba cuộn dây stator đặt lệch nhau góc 120o tương ứng với 3 vector điện áp trong bộ nghịch lưu. Điện áp 3 pha trên ba cuộn dây stator hình thành một từ trường quay tương tự như ta có thể thay 3 vector điện áp trong bộ nghịch lưu bằng một vector tương đương. Vector này dịch chuyển liên tục trong không gian một cách đều đặn theo quỹ đạo đường tròn, do đó có thể triệt bỏ được sóng hài và việc điều khiển trở nên tuyến tính hơn. Vector tương đương chính là vector trung bình trong thời gian một chu kỳ lấy mẫu của quá trình điều khiển bộ nghịch lưu áp theo nguyên lý điều chế vector không gian. (a) (b) Hình 4.30: Giản đồ vector điện áp ngõ ra của bộ nghịch lưu Lấây ví dụ minh hoạ ngay ở bộ nghịch lưu điều khiển theo phương pháp sáu bước. Nếu sử dụng phương pháp điều chế vector không gian, ta sẽ thực hiện tuần tự như sau: Sáu trạng thái tương ứng với sáu thời điểm đóng cắt chuyển mạch giữa các khoá bán dẫn hình thành nên sáu bước trong bộ biến tần cho biết vị trí của mỗi vector chuyển mạch, các vector này định ra trạng thái thay đổi của vector tương đương trong không gian nên còn gọi là vector trạng thái (hình 4.30 a). Nếu quy ước trạng thái “1” là nối lên”+”, “0” là nối với “-“ (nếu nguồn dc có điểm giữa ta có thể ________________________________________________________________________________________________________ Trang 96 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang quy ước: “1” là nối lên”+”, “0” không nối với nguồn và “-1” là nối với nguồn “-“), ta sẽ có giản đồ vector điện áp ngõ ra (vì mỗi một vector sẽ diễn tả điện áp ngõ ra theo trạng thái đóng cắt tương ứng của mỗi pha) như hình 4.30 (b) với 6 vector cơ bản (U1: 100, U2:110, U3:010, U4:011, U5:001, U6:101) và hai vector không (111, 000). (a) (b) Hình 4.31: Quỹ đạo của vector không gian sẽ tròn hơn khi tăng tần số chuyển mạch Nếu chỉ dùng các vector cơ bản (reference vector) như trên thì không đủ để diễn tả tất cả các trạng thái của bộ nghịch lưu, do đó phải dùng thêm vector không (zero vector) như vector (1, 3, 5), (2, 4, 6) hay tại gốc toạ độ (0, 0, 0) trên hình 4.30 a và các vector trung gian khác … Nhờ vào vector không, ta sẽ diễn tả được những thời điểm mà điện áp của ngõ ra bộ nghịch lưu bằng 0 (sơ đồ nghịch lưu theo phương pháp sáu bước không có thời điểm điện áp ngõ ra bằng 0). Sóng dạng điện áp ngõ ra của bộ nghịch lưu sáu bước chứa nhiều thành phần sóng hài bậc cao. Hệ quả là quỹ đạo của vector không gian bị biến đổi về pha và module so với trường hợp 3 pha tải dạng sin. Để quỹ đạo dạng đường tròn, người ta phải thay đổi phương ________________________________________________________________________________________________________ Trang 97 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang thức điều chế. Cụ thể là tăng tần số chuyển mạch (chèn thêm vào giữa các vector chuẩn những vector trung gian). Lúc này quỹ đạo của vector không gian sẽ tròn hơn như hình 4.31 (a). Để thực hiện được điều này, người ta lập trình dựa vào tín hiệu chủ đạo hình sin để tạo thêm các vector trung gian như hình 4.30 (b). Giá trị của vector này hoàn toàn có khả năng tính được theo các vector cơ bản, cụ thể khi đóng mở các vector cơ bản và vector không, ta sẽ tạo ra các vector trung gian như ur = f(t1.U1 , t2.U2). Các vector này dịch chuyển trong mặt phẳng pha với một góc bằng 60o/n, với n số bước trong một khoảng (sector) giữa hai vector cơ bản: n = T/6Ts. Dựa vào tín hiệu chủ đạo hình sin, giả sử nghịch lưu cần phải tạo ra một giá trị điện áp nào đó trong các pha tương ứng với vector tương đương ur . Phân tích u thành hai vector t1.U1 và t2.U2 với: 2211 ututu += rrr (4.2) Như vậy vector được xác định dựa vào các vector: tur 1.U1 và t2.U2. Nghĩa là nếu chia chu kỳ TS ra là nhiều khoảng thời gian mà tại một thời điểm nào đó xác định một vector tham gia Ui có hai thành phần U1.i và U2.i tương ứng với khoảng thời gian làm việc là t1 và t2 ta sẽ xác định được Ui qua biểu thức: ( ) ( ) 0021212121 22 t.utt. uutt.uuUi rrrrr +−−+++= (4.3) Ở đây: t0 là khoảng thời gian điện áp ngõ ra của nghịch lưu bằng không t1 là khoảng thời gian làm việc của U1 t2 là khoảng thời gian làm việc của U2 Từ biểu thức trên ta thấy: - Khi t0 = 0, vector tương đương u r có đỉnh nằm trên đường nối giữa hai đỉnh của vector U1 và U2. - Khi t1 = 0, vector tương đương u r có đỉnh nằm trên đường nối giữa hai đỉnh của vector Uo và U2. - Khi t2 = 0, vector tương đương u r có đỉnh nằm trên đường nối giữa hai đỉnh của vector Uo và U1. Tính toán một cách tương tự cho các vector khác ở 7 phần (sector) còn lại của giản đồ vector điện áp ngõ ra của bộ nghịch lưu. Như vậy dựa vào sóng dạng điện áp ngõ ra ta có thể thành lập giản đồ vector điện áp ngõ ra của bộ nghịch lưu hay ngược lại khi có giản đồ vector điện áp ngõ ra của bộ nghịch lưu ta hoàn toàn có khả năng tìm ra sóng dạng điện áp ngõ ra trên từng pha của bộ nghịch lưu. Từ giản đồ vector điện áp ngõ ra dễ dàng xác định các ________________________________________________________________________________________________________ Trang 98 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang vector chuyển mạch qua đó xác định trạng thái đóng cắt của các khoá bán dẫn (do quy đổi các vector tham gia về sáu trạng thái cơ bản). Hình 4.32: So sánh điều chế PWM kinh điển với điều chế vector không gian Nguyên lý phương pháp điều chế vector không gian tương tự như phương pháp điều chế PWM kinh điển nhưng được số hoá: URC được thay bằng URC(D) và US được thay bằng US(D). Do tần số chuyển mạch trong mạch số lớn hơn rất nhiều so với tần số bộ nghịch lưu nên giá trị US(D) coi như không đổi trong một chu kỳ TS. Mặc dù đã được số hoá nhưng vẫn còn dạng răng cưa nên chu kỳ TS bao gồm hai chu kỳ phụ là TS = 2T0. Theo đồ thị hình 4.33, các giá trị T1 và T2 được xác định như sau: ( )[ SS tUTT += 1..2 1 01 ] (4.4) ( )[ SS tUTT −= 1..2 1 02 ] (4.5) Hình 4.33: Phương thức so sánh tạo xung đóng cắt trong điều chế vector không gian Với T1 và T2 là thời điểm bắt đầu và kết thúc thời gian tạo xung, ST Tt 11 = ; ST Tt 22 = ; 3 2 1 Eu =r và 32 .3 2 πjeEu =r , ta có: ( ) uutut rrr =+ 2211 .. (4.6) ________________________________________________________________________________________________________ Trang 99 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 210 1 ttt −−= (4.7) (Xem hình 4.33) U1 và U2 là hai vector cơ bản. Từ hai phương trình (4.6) và (4.7), giải ra tìm được: ⎟⎠ ⎞⎜⎝ ⎛ −= απ 3 sin..31 E Ut (4.8) αsin..32 E Ut = (4.9) 210 1 ttt −−= (4.10) Góc α là góc lệch giữa ur và U1. Vector ur chính là vector tương đương được tách ra thành ba thành phần tính được theo U1, U2, U0. Dựa vào 3 thành phần này để tính t1, t2, t0 là các khoảng thời gian tương ứng với các vector cơ bản U1, U2, U3, U4, U5, U6 và các vector không. Hay nói cách khác đó chính là thời gian điều khiển các khoá bán dẫn. Minh hoạ việc điều khiển SVPWM qua hình 3.34. Độ lớn của u r Góc lệch pha α Hình 4.34: Nguyên lý chung của phương pháp điều chế vector không gian Các bộ nghịch lưu vừa nêu chỉ chứa 2 khoá bán dẫn trên mỗi nhánh pha tải, được gọi là nghịch lưu áp hai bậc (two-level VSI), được áp dụng ở điện áp vừa và công suất nhỏ. Khái niệm hai bậc xuất phát từ quá trình điện áp giữa một đầu pha tải (điểm A, B hoặc C trong hình 4.24) với điểm 0 (hình 4.24) của nguồn dc thay đổi giữa hai bậc khác nhau (tương ứng trong sơ đồ hình 4.24 là +E/2 và –E/2). Điều này dẫn đến dV/dt khá lớn và hiện tượng điện áp common mode rất nghiêm trọng (xem mục 4.6.5). Để khắc phục điều này người ta sử dụng bộ nghịch lưu áp đa bậc (Multi- level Voltage source VSI). Để cho đơn giản, có thể hiểu bộ nghịch lưu áp đa bậc chính là bộ nghịch lưu áp hai bậc như trên hình 4.24 nhưng thay thế một khoá transistor bằng nhiều khoá như hình 4.33 (a). Bốn khoá bán dẫn được đóng cắt theo chương trình dựa trên việc so sánh với tín hiệu chủ đạo hình sin như trên hình 4.33 (b). Chương trình này được nạp vào phần mềm điều khiển đóng cắt giữa các khoá bán dẫn điều khiển việc đóng cắt trên các khoá này để sóng dạng điện áp ra ở mỗi pha được trình bày trên hình 4.32 (c). Rõ ràng khi quan sát trên sóng dạng điện áp ngõ ra (hình 4.32 b) hay trên các mức so sánh trên hình 4.32 b, bộ biến tần này có ________________________________________________________________________________________________________ Trang 100 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 5 mức điện áp trên mỗi pha nếu so với điểm 0 của nguồn dc. Đó là các mức: 0, E/4, E/2, -E/4, -E/2. Vì vậy đây là bộ nghịch lưu áp 5 bậc. (b) (a) E/4 E/2 E/4 E/4 -E/4 -E/2 -E/4 (c) Hình 4.35: Nghịch lưu áp năm bậc Đây là một phương pháp điều chế có nhiều ưu điểm khi sử dụng ở điện áp cao và công suất lớn. 4.7 ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ BƯỚC 4.7.1 Nguyên tắc điều khiển Như đã trình bày trong phần 4.2.4, nguyên lý làm việc của động cơ bước là dịch chuyển theo từng bước của từ trường stator. Do đó để điều khiển tốc độ động cơ bước người ta điều khiển từ trường stator theo hai cách chuyển mạch cuộn dây điều khiển ở stator: - Thay đổi chiều quay theo trình tự chuyển mạch giữa các cuộn dây stator. - Thay đổi tốc độ thông qua thay đổi tần số xung nhịp. Cũng có thể thay đổi tốc độ động cơ bước bằng cách thay đổi trình tự chuyển mạch giữa các cuộn dây stator (xem hình 4.39). Tuy nhiên điều khiển không rộng và trơn bằng cách trên. Sơ đồ khối trình bày hai phương thức điều khiển trên như sau: ________________________________________________________________________________________________________ Trang 101 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Mạch logic Tuần tự Khối đệm cơng suất Giới hạn Dịng và áp Động cơ bước Thay đổi tần số để thay đổi tốc độ Thay đổi chiều quay Hình 4.36: Sơ đồ khối nguyên lý điều khiển tốc độ động cơ bước Từ sơ đồ khối trên hình 4.36, hệ điều khiển động cơ bước phải thoả hai chức năng: - Cấp nguồn điện cho các pha theo trình tự tín hiệu vào, nghĩa là mạch điều khiển phải là mạch logic tuần tự hay các mạch điều khiển thực hiện được tính năng tuần tự. - Do nguồn điện cung cấp dưới dạng xung, nên muốn động cơ có đủ moment thì thời hằng điện L/R của động cơ phải lớn hơn đáng kể so với chu kỳ xung của mạch điện điều khiển. Điều này cho phép kết luận tốc độ của động cơ bước không quá cao. 4.7.2 Mạch điện minh hoạ Hình 4.37: Sơ đồ nguyên lý mạch điều khiển tốc độ và đảo chiều quay động cơ bước. Dưới đây là một mạch điều khiển tốc độ và chiều quay của động cơ bước thực tế nhưng do tính chất của giáo trình nên không trình bày cụ thể, một số mạch bảo vệ cũng được lược bớt để thuận tiện trong việc khảo sát nguyên lý làm việc. Động cơ bước ở đây dùng loại đơn cực trọn bước. Khi thay đổi tần số ngõ vào, việc tuần tự cấp điện cho các cuộn dây từ Lo đến L3 cũng thay đổi theo làm thay đổi tốc độ độ cơ. Tín hiệu vào thay đổi chiều quay chính là tín hiệu thay đổi chế độ đếm của mạch đếm: từ đếm lên sang đếm xuống hoặc ngược lại. ________________________________________________________________________________________________________ Trang 102 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Khi thay đổi chế độ làm việc của mạch đếm, việc cấp điện vào bộ dây stator sẽ thay đổi làm thay đổi chiều quay. Muốn động cơ bước quay theo chiều thuận, sóng dạng điện áp đặt lên bộ dây stator như hình 4.38: Hình 4.38: Sóng dạng điện áp điều khiển động cơ bước quay thuận. Lý luận tương tự, khi muốn động cơ bước quay theo chiều nghịch, sóng dạng điện áp đặt lên bộ dây stator như hình 4.39: Hình 4.39: Sóng dạng điện áp điều khiển động cơ bước quay nghịch. Cũng có thể thay đổi tốc độ động cơ trên theo trình tự chuyển mạch giữa các cuộn dây stator. Minh hoạ qua hình 4.40. Hình 4.40: Thay đổi tốc độ động cơ theo trình tự chuyển mạch giữa các cuộn dây stator 4.8 ỨNG DỤNG VI XỬ LÝ, VI ĐIỀU KHIỂN TRONG ĐIỀU KHIỂN TỐC ĐỘ ĐỘNG CƠ ĐIỆN ________________________________________________________________________________________________________ Trang 103 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 4.8.1 Kiến thức cơ bản Giáo trình này chỉ chú trọng đến phần thực hành lập trình trên vi điều khiển nên không có phần lý thuyết về vi điều khiển mà thay vào đó là nhập môn lập trình vi điều khiển. Trong phần này, giáo trình sẽ trình bày những vấn đề lý thuyết cơ bản nhất về hệ 80x86, vừa đủ cho người học giải quyết các bài tập cơ bản trong chương trình. Sau khi đã vững phần cơ bản, người học sẽ nâng cao hơn các hiểu biết về vi điều khiển thông qua các bài tập nâng cao. 4.8.1.1. Tổ chức hệ vi điều khiển: 4.8.1.1.1. Giới thiệu hệ vi điều khiển dùng trong phần mềm mô phỏng: Hình 4.41: Hệ thống vi điều khiển dùng trong phần mềm. Như đã giới thiệu ở phần trước hệ vi xử lý dùng trong chương trình mô phỏng này và hệ vi điều khiển thực tế nói chung bao gồm ba phần chính: bộ vi xử lý (CPU); bộ nhớ và thiết bị xuất nhập (I/O). Cụ thể trình bày trên hình 4.41. Bộ mô phỏng vi điều khiển bao gồm khối xử lý trung tâm (CPU), 256 byte của bộ nhớ truy xuất ngẫu nhiên (RAM) và 16 cổng vào ra nhưng chỉ sử dụng 6 port (từ port 0 đến port 5) Chương trình mô phỏng có thể lập trình để chạy nhiều chương trình khác nhau. Trong thực tế, bộ nhớ RAM có thể được thay thế bằng ROM. Ở đây có hàng trăm thí dụ về các hệ thống như: điều khiển đèn giao thông; các trò chơi giải trí đơn giản như xếp dĩa, đèn quảng cáo, tìm đường ra trong mê cung … ; định thời gian cho lò viba, các thiết bị gia dụng … ; bộ điều khiển lò gia nhiệt; các hệ thống điều khiển thang máy, nhiệt độ làm việc môi trường … Tất cả tuỳ thuộc vào sự tinh tế, uyển chuyển của giáo viên khi giảng dạy (thông qua việc linh hoạt thay đổi các thiết bị ghép nối ở ngõ ra vi điều khiển). Để thấy rõ điều này, hãy mở chương trình SMS32v23 (đã crack) có sẵn trong dĩa và chạy file “Demo” tại: … \myweb8\softwares\BaiTap\Demo. ________________________________________________________________________________________________________ Trang 104 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 1/ Khối xử lý trung tâm: Khối xử lý trung tâm là "bộ não" của máy vi tính. Tất cả các sự tính toán, quyết định và việc dịch chuyển dữ liệu đều được thực thi ở đây. CPU dùng các vị trí lưu trữ tạm thời được gọi là thanh ghi, thanh ghi chỉ nhớ dữ liệu có dung lượng thấp và sẽ mất dữ liệu khi mất điện nếu mạch không có back up (mạch làm nhiệm vụ liên tục cấp điện cho CPU). Nó chứa khối số học và logic (viết tắt là ALU) khối này thực hiện việc xử lý. Dữ liệu được lấy từ các thanh ghi, được xử lý và kết quả sau khi xử lý xong được đưa trở lại các thanh ghi. Lệnh Move (MOV) được sử dụng để dịch chuyển dữ liệu giữa vùng nhớ RAM và các thanh ghi. Ở đây ta có rất nhiều lệnh, mỗi lệnh thì có một chức năng riêng. Tập hợp các lệnh này được gọi là tập lệnh. 2/ Các thanh ghi đa năng: CPU có bốn thanh ghi mục đích chung gọi là AL, BL, CL và DL. Những thanh ghi này chứa 8 bít hay 1 byte. Các thanh ghi quản lý các số không dấu trong vùng từ 0 đến 255 và các sốâ có dấu vùng từ −128 đến + 127 (kể cả số 0): ở đây các thanh ghi này sử dụng như vùng nhớ lưu trữ tạm thời. Các thanh ghi được sử dụng ưu tiên đối với vùng nhớ RAM bởi vì nó cần một khoảng thời gian tương đối dài để chuyển dữ liệu giữa RAM và CPU. Nhìn chung máy vi tính có tốc độ xử lý nhanh hơn nếu thanh ghi hay bộ nhớ có dung lượng lớn hơn trong CPU. Các thanh ghi được gọi tên là AL, BL, CL và DL vì phiên bản 16 bit của CPU này có nhiều thanh ghi gọi là AH, BH, CH và DH . Chữ "L" có nghĩa là thấp (Low) và chữ "H" có nghĩa là cao (High). Ở đây, 2 chữ cuối L và H trong các thanh ghi trên chính là 8 bít thấp và 8 bít cao của thanh ghi 16 bit. 3/ Các thanh ghi chuyên dùng: Các thanh ghi chuyên dùng trong hệ vi điều khiển dùng trong phần mềm mô phỏng là IP, SR và SP. a) Con trỏ lệnh IP Thanh ghi này chứa địa chỉ lệnh đang được hiện hành. Khi việc thực thi hoàn thành, IP được giảm xuống và chỉ tới lệnh kế tiếp. Khi bộ nhớ RAM hiển thị, thì con trỏ lệnh được làm nổi rõ bằng màu đỏ trên nền chữ vàng. b) Thanh ghi trạng thái SR Thanh ghi này chứa các cờ để báo cáo về trạng thái CPU. Cờ zero "Z" được thiết lập bằng 1 nếu việc tính toán có kết quả bằng 0. Cờ dấu "S" được thiết lập bằng 1 nếu việc tính toán có kết quả âm. Cờ tràn "O" được thiết lập nếu kết quả trong thanh ghi lớn hơn 255 (tràn số). Ngắt "I" được thiết lập nếu các lệnh ngắt được cho phép. c) Con trỏ ngăn xếp SP ________________________________________________________________________________________________________ Trang 105 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Ngăn xếp là một vùng của tổ chức bộ nhớ sử dụng qui tắc vào sau ra trước (LIFO: Last In First Out). Con trỏ ngăn xếp chỉ tới ô nhớ ngăn xếp chồng kế tiếp. Ngăn xếp trong bộ mô phỏng bắt đầu tại địa chỉ BF. Ngăn xếp tăng theo hướng địa chỉ 0, dữ liệu được cất vào ngăn xếp và lưu giữ cho lần sử dụng sau. Dữ liệu được lấy ra khỏi ngăn xếp khi cần đến. Con trỏ ngăn xếp quản lý nơi ngăn xếp cất và lấy dữ liệu ra . Khi hiển thị trong RAM, con trỏ ngăn xếp được tô sáng bằng màu xanh trên nền chữ vàng. 4/ Các BUS (Busline: luồng liên lạc): Các BUS là một tập hợp các dây dẫn được sử dụng để mang tín hiệu đi trao đổi thông tin giữa các thiết bị trong hệ vi xử lý. Chúng thường được in như các đường song song trong board mạch điện. Khe cắm là các ổ cắm cho phép card có thể kết nối với hệ thống thông qua các BUS. Điển hình một máy tính 8 bit có các thanh ghi với độ rộng 8 bit và 8 đường trong 1 BUS dữ liệu. Một máy tính 16 bit có các thanh ghi 16 bit, BUS dữ liệu có 16 đường … Có thể dùng hình tượng xa lộ để minh hoạ các BUS (Hình 4.42): trên xa lộ có nhiều địa điểm như A, B, C, D … Nếu chỉ dùng dây điện để nối (nối cứng) ta phải tốn rất nhiều đường dây để liên kết giữa các địa điểm lại với nhau nhưng trên xa lộ này lái xe dù không thông thạo vùng này cứ đi dọc xa lộ là có thể tìm đến địa điểm cần đến. Rõ ràng với một BUS ta có thể liên kết nhiều thiết bị trong hệ vi xử lý lại với nhau (mỗi thiết bị có thể xem như một địa điểm trên xa lộ còn xe mang thông tin trao đổi giữa các thiết bị trong hệ thống). BUS (Đường giao thơng) THƠNG TIN (Xe) Hình 4.42: Minh hoạ BUS thông qua hình tượng xa lộ. Dựa vào tính chất thông tin tải trên Bus, người ta phân làm ba loại chính: a) Bus dữ liệu: được sử dụng để mang dữ liệu giữa CPU, RAM và port nhập/xuất (I/O). Bộ mô phỏng này có bus dữ liệu 8 bit. b) Bus địa chỉ: được sử dụng để xác định địa chỉ của bộ nhớ RAM hay port I/O được sử dụng. Bộ mô phỏng này có 8 bit địa chỉ. c) Bus điều khiển: xác định RAM hay khối I/O được truy xuất. Nó cũng xác định việc đọc hay viết dữ liệu. Dữ liệu được viết vào hay xuất ra trên CPU đến RAM hay cổng I/ O cũng do bus điều khiển này. ________________________________________________________________________________________________________ Trang 106 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 5/ Bộ nhớ RAM: Bộ mô phỏng có 256 byte RAM, có địa chỉ từ 0 đến 255 (số thập phân) hay từ 00 đến FF (số Hex). Địa chỉ của RAM thường được đặt trong dấu ngoặc vuông ví dụ như [7C] trong đó 7C là số Hex. [7C] đọc là dữ liệu cất tại ô nhớ 7C. Trong thực tế, đây chính là ROM nhưng nói chung chương trình chính sẽ được lưu trữ tại đây. Bộ nhớ bán dẫn làm việc tương tự một kho chứa dữ liệu bên cạnh CPU. Nó cũng có đủ 3 tuyến như CPU, đó là: tuyến dữ liệu, tuyến điều khiển, tuyến địa chỉ (hình 4.43). Hình 4.43: Bộ nhớ bán dẫn Tuyến địa chỉ: đây là bus 1 chiều, được sử dụng để xác định địa chỉ của vùng nhớ trong bộ nhớ bán dẫn, nơi mà bộ nhớ chọn để truy xuất dữ liệu. Tuyến điều khiển: đây là bus 1 chiều nhưng hình vẽ tổng quan thì xem như 2 chiều. Nó xác định việc đọc hay viết dữ liệu trên bộ nhớ bán dẫn. Cụ thể, dữ liệu được viết vào vùng nhớ được chọn hay từ đó xuất đi. Ngoài ra, cho phép bộ nhớ ngưng làm việc (treo: không dùng đến) cũng do tín hiệu trên tuyến điều khiển này quyết định. Hình 4.44: Ba cách thể hiện nội dung trong RAM trên cùng một địa chỉ theo cách mã hoá địa chỉ như trên. ________________________________________________________________________________________________________ Trang 107 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Tuyến dữ liệu: đây là bus 1 chiều với ROM và là 2 chiều với các bộ nhớ khác, được sử dụng để mang dữ liệu từ vùng nhớ được chọn bởi tuyến địa chỉ trong bộ nhớ đến các thiết bị khác như CPU, ROM, RAM và các cổng nhập/xuất (I/O) trong hệ thống. Nguyên lý làm việc của vi mạch nhớ trong mục 3.2.2 nói rất rõ, do đó đây sẽ không nhắc lại. 6/ Các yếu tố phụ trợ khác: a) Đồng hồ hệ thống (clock): là đường mang những xung có tần số ổn định để các bộ phận trong hệ vi xử lý có thể làm việc đồng bộ với nhau, các lệnh trong bộ vi xử lý thực thi cũng dựa vào các chu kỳ xung này. Do vậy tốc độ hệ vi xử lý bị ảnh hưởng rất nhiều bởi tần số xung clock. Tốc độ xung clock hiện nay đã đạt đến vài tỉ chu kỳ mỗi giây (vào năm 2004). Bộ mô phỏng trong phần mềm có thể điều chỉnh được tần số xung clock nên tốc độ thực thi lệnh cũng điều chỉnh được trong một khoảng khá rộng và trơn mà không cần chọn thay đổi thạch anh dao động. b) Ngắt cứng: hệ thống cần có ít nhất 1 đường ngắt giúp CPU đáp ứng được các yêu cầu của phần cứng như máy in đang chạy nhưng hết giấy, nhấn nhả phím, rê chuột … CPU sẽ xử lý chương trình phục vụ ngắt để trả lời lệnh ngắt trên. Khi hoàn thành chương trình ngắt, nó sẽ tiếp tục các thao tác đang làm trước khi nhu cầu ngắt xuất hiện. Phần mềm mô phỏng này có sẵn một đường ngắt và bộ định thời tạo xung ngắt tạo ra những xung ngắt có tần số điều chỉnh được (xem bài tập 11 trong phần « bài tập cơ bản » trên dĩa giáo trình điện tử). 4.8.1.1.2. Nguyên lý làm việc của hệ vi điều khiển trong phần mềm: Hoạt động bên trong của vi điều khiển rất phức tạp, nó điều khiển hoạt động của mọi thành phần trong hệ thống. Nhưng thật ra vi điều khiển chỉ lập đi lập lại chu kỳ đón và thực thi lệnh (còn gọi là chu kỳ tìm nạp + giải mã + thi hành lệnh) thực hiện theo từng bước sau: * Tìm nạp lệnh tiếp theo từ bộ nhớ vào thanh ghi lệnh IR. Trong chương trình này CPU tìm nạp lệnh theo địa chỉ mà IP chỉ tới: đón hay tìm nạp lệnh. * Định loại lệnh vừa tìm nạp, nếu lệnh dùng dữ liệu trong bộ nhớ thì CPU sẽ tìm đến và nạp vào thanh ghi bên trong CPU: giải mã lệnh. * Thi hành lệnh vừa giải mã xong và lưu kết quả ở nơi thích hợp: thi hành lệnh. Sau khi thực hiện xong 3 bước này CPU lại tìm đến lệnh tiếp theo trong chương trình để tuần tự thực hiện lặp lại 3 bước trên. Có thể minh hoạ bằng hình 4.45. ________________________________________________________________________________________________________ Trang 108 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Hình 4.45: CPU liên tục tìm nạp và thi hành lệnh Như vậy dù cho chương trình CPU thì rất phức tạp nhưng về cơ bản nó cũng chỉ thực hiện 2 hoạt động: tìm lệnh, thi hành, tìm lệnh, thi hành.và cứ như thế mà tiếp diễn. CPU sẽ thực thi được toàn bộ chương trình. Cụ thể hơn ta quan sát một ví dụ sau trong chương trình mô phỏng. Mở bài tập về động cơ bước ở phần bài tập cơ bản trong đĩa CD này, bạn sẽ gặp giao diện của bài tập như sau: Trên màn hình hiển thị chương trình điều khiển động cơ bước quay theo một chiều cố định. Nhấp chuột vào « step », vi điều khiển sẽ thực hiện lệnh MOV AL,1. Màn hình sau sẽ diễn tả tác động của lệnh này lên vi điều khiển như sau: ________________________________________________________________________________________________________ Trang 109 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Ta thấy số hexa 1 đã được nạp vào thanh ghi AL, thanh ghi IP (con trỏ lệnh) chỉ ra địa chỉ kế tiếp của lệnh mà vi điều khiển sắp thực hiện (OUT 05) nằm ở ô nhớ 03. Các thanh ghi khác không tham gia vào lệnh này nên không có thay đổi gì. Tiếp tục nhấp « step », ta thấy: Lệnh OUT 05 xuất dữ liệu chứa trong thanh ghi AL (là 01) sang port 05 điều khiển động cơ bước cho phép nhóm cuộn dây đầu tiên trong 4 nhóm có điện (có thể xem chi tiết hơn về động cơ bước trong phần giới thiệu của đĩa CD này). Con trỏ lệnh IP tự động tăng thêm 2 đơn vị (do lệnh OUT 05 chiếm đến 2 byte nhớ trong RAM) chỉ ra địa chỉ kế tiếp của lệnh mà vi điều khiển sắp thực hiện (MOV AL,2) ________________________________________________________________________________________________________ Trang 110 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang nằm ở ô nhớ 05. Cũng giống như trên các thanh ghi khác không tham gia nên không thay đổi dưới tác động của lệnh này. Tiếp tục nhấp vào « step », ta nhận thấy: Tương tự trên, số hexa 2 được nạp vào thanh ghi AL và con trỏ IP tăng lên 08 chỉ ra lệnh kế tiếp là OUT 05 nằm ở địa chỉ 08 trong RAM. Tiếp tục nhấp « step », ta thấy: Tương tự, như trên ta thấy tác động của lệnh OUT 05 làm động cơ bước quay đi một góc 10o. Tiếp tục nhấp « step » … và cứ như thế tiếp tục cho đến lệnh cuối cùng JMP start. ________________________________________________________________________________________________________ Trang 111 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Nếu như từ đầu đến đây vi điều khiển thực hiện tuần tự từng lệnh từ trên xuống thì đến đây vi điều khiển thực hiện một bước nhảy. Nó sẽ nhảy đến nơi có chứa nhãn start, trong chương trình này nhãn start ở ngay đầu chương trình nên giá trị con trỏ lệnh IP là 00. Nếu bạn nhấp « Run » hay F9 chương trình mô phỏng sẽ liên tục lặp lại các bước vừa nêu. Muốn xem tập tin nguồn bạn có thể chọn Edit/List File, màn hình sẽ hiện thị đầy đủ về thông tin của chương trình điều khiển đang chạy: ________________________________________________________________________________________________________ Trang 112 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Qua ví dụ đơn giản vừa nêu ở trên, ta thấy bình thường vi điều khiển sẽ thực hiện tuần tự từng lệnh một từ điểm xuất phát được định ra bởi người lập trình chỉ khi nào gặp các lệnh nhảy, gọi chương trình con (có thể xem đoạn phim minh hoạ trong giáo trình điện tử), gọi chương trình ngắt … thì tính tuần tự trên mới tạm thời bị gián đoạn. Từ đây ta có thể nhận thấy, với cùng một yêu cầu đặt ra cho hệ thống vi xử lý sẽ có nhiều chương trình cùng thoả mãn được yêu cầu trên, chương trình này thì dài còn chương trình kia thì lại ngắn, điều này tuỳ thuộc vào nhiều yếu tố như khả năng của người lập trình, cấu trúc phần cứng của hệ thống … 4.8.1.2. Trình tự lập trình vi điều khiển Chương trình vi điều khiển là tập hợp các lệnh sắp xếp theo một trình tự nhất định, các lệnh này được lấy trong tập lệnh của bộ vi điều khiển (Microcontroller) đang sử dụng trong hệ thống. Bộ vi điều khiển sẽ thực hiện các lệnh này để đạt được một số kết quả mà chương trình đặt ra. Do vậy, lập trình là tuỳ vào yêu cầu của bài toán thiết kế, người lập trình sẽ viết ra một chương trình chạy được trên hệ vi điều khiển đang sử dụng đưa hệ thống vào làm việc đúng theo yêu cầu của bài toán đã đặt ra. Để thiết kế chương trình một cách chính xác và khoa học, ta cần thực hiện tuần tự theo những bước sau: - Phân tích các yêu cầu của đề bài. - Xây dựng lưu đồ giải thuật. - Thiết kế chương trình. - Viết chương trình. - Biên dịch chương trình. - Thực hiện gỡ lỗi cho chương trình. - Nạp chương trình vào phần cứng và kiểm tra kết quả. ________________________________________________________________________________________________________ Trang 113 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Thực hiện đúng quy trình trên sẽ giúp giảm thiểu thời gian kiểm tra cũng như phát hiện kịp thời những thiếu sót khi thực hiện. Nội dung các bước được trình bày rất chi tiết trên giáo trình điện tử, bạn chỉ việc click vào các đề mục mình cần quan tâm, nội dung sẽ hiện ra trước mắt bạn. 4.8.2 Hướng dẫn sử dụng tài liệu điện tử Như đã trình bày ở phần giới thiệu, giáo trình này biên soạn với đối tượng là sinh viên-học sinh có quan tâm đến vi điều khiển, các bài tập trong giáo trình luôn được trình bày theo nguyên tắc từ đơn giản đến phức tạp, từ trực quan sinh động đến tư duy trừu tượng … do đó, tuỳ vào trình độ của người học sẽ có cách tiếp cận giáo trình khác nhau. Nhưng tốt nhất công việc đầu tiên của người học là cần phải xem phần HƯỚNG DẪN. Mỗi đối tượng học với một trình độ cụ thể sẽ cần một thời gian nhất định khi xem qua phần này, sau khi đã nắm bắt các lý thuyết cơ bản về vi xử lý dùng trong phần mềm, người học cần nghiên cứu kỹ các bài tập cơ bản và tự mình làm các bài tập củng cố kèm theo (phải cố gắng tự làm nhất là đối với các đối tượng mới bắt đầu tiếp cận với vi xử lý, vi điều khiển) không nên nóng vội xem các bài giải trong phần phụ lục. Khi cảm nhận chính bản thân người học có thể tự mình làm được các bài tập cơ bản này, thì lúc này mới chính là lúc người học làm tiếp các bài học của phần nâng cao. Giáo trình điện tử này được xây dựng trên môi trường Windows 98 (tất nhiên các Windows cao hơn duyệt vẫn tốt), với giao diện nội dung hướng dẫn hoàn toàn bằng tiếng Việt dùng font Times New Roman (bạn nên chọn font mặc định trong trình duyệt cho đúng để việc hiển thị được tốt). Bạn chỉ việc click vào tên các danh mục để mở các trang tương ứng. Khi nhấp vào các nút xem phim, bạn sẽ thấy một cửa sổ chiếu phim trình chiếu một đoạn phim minh hoạ mà bạn có thể điều chỉnh được tiến trình chiếu phim sao cho việc tiếp thu của bạn là tốt nhất. Do có các đoạn chiếu phim này nên cấu hình tối thiểu của máy tính của bạn phải là Pentium có card màn hình 16MB RAM và128 MB RAM đệm trở lên, thấp hơn bạn vẫn có thể xem được nhưng chất lượng không bảo đảm. Khi bạn đưa dĩa CD giáo trình điện tử này vào máy, nếu Windows của bạn không ngăn cản các trình duyệt tự động (một số người không thích các chương trình quảng cáo nên đã tắt đi chế độ này) thì máy tính của bạn sẽ xuất hiện một màn hình trang chủ như hình sau ________________________________________________________________________________________________________ Trang 114 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Trên trang chủ, tài liệu điện tử trình bày các thông số cơ bản giúp bạn có thể tham khảo tài liệu tốt nhất. Cụ thể là tài liệu này nên được xem trên kích cỡ màn hình 800x600; Màu sắc, cấu trúc hợp lý nhất trong trình duyệt Internet Explorer (các trình duyệt khác cũng được nhưng giao diện hơi khác); Giáo trình được trình bày bằng một font duy nhất: font Unicode. Nội dung của các chữ trên các nút nhấn sẽ giúp bạn liên kết được với các phần nội dung mà bạn muốn tìm. Nếu bạn không xem được các hình ảnh động trên các trang của tài liệu điện tử hãy click chuột vào hình dưới đây để cài trình duyệt: Trong quá trình giải các bài tập củng cố, nếu cần tra cứu về ý nghĩa và cách sử dụng của các lệnh trong tập lệnh 80x86, các bạn có thể xem trong phần phụ lục của tài liệu điện tử hay photocopy “Phần phụ lục” trong phần cuối của bài giảng này để tiện cho việc tra cứu. 4.8.3 Bài toán điển hình 4.8.3.1 Bài toán 1: Viết chương trình xuất dữ liệu điều khiển động cơ bước luân phiên quay thuận và quay nghịch. Mục đích - yêu cầu: *• Làm quen với chức năng các lệnh nhảy, lệnh xuất dữ liệu. * Hiểu cách đưa dữ liệu vào điều khiển động cơ bước từ đó sinh viên có thể thiết kế điều khiển đèn giao thông trong thực tế. Kiến thức nền : ________________________________________________________________________________________________________ Trang 115 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang 1/ Chương trình sử dụng các lệnh: CLO, MOV, OUT, JMP và END. Động cơ bước trong chương trình mô phỏng được điều khiển bằng cách gởi dữ liệu xuất ra port 5. Đây là loại động cơ bước có 4 cuộn dây ở stator được điều khiển theo dạng đơn cực nửa bước, nối vào port 5 của hệ vi xử lý nên để điều khiển ta dùng lệnh OUT 5. Chỉ có 4 bit thấp trong port này được sử dụng điều khiển động cơ bước, 4 bit cao không sử dụng. Ở đây có chương trình ví dụ: baitap02.asm. Ta có thể chép chương trình từ trang giúp đỡ và dán vào trong trình đang soạn thảo. Để chạy chương trình, ta click vào biểu tượng Step lập lại nhiều lần để chạy từng bước hay nhấn vào Run để chạy trọn vẹn chương trình. Để ngừng chương trình ta click vào stop. Khi chương trình đang chạy, click vào RAM - Source hay RAM - Hex hay RAM - ASCII. Ở đó ta sẽ thấy được sự thay đổi luân phiên các nội dung của việc truy xuất bộ nhớ RAM. Nhấn vào tab List - file để thấy mã máy được biên dịch bởi chương trình mô phỏng. 2/ Các nhãn và lệnh JMP: Nhãn đánh dấu các vị trí thì được sử dụng bởi các lệnh nhảy. Tất cả các lệnh trong chương trình này được lập lại liên tục cho đến khi nhấn Stop. Tên nhãn phải bắt đầu với 1 chữ cái hay 1 ký tự. Tên nhãn không được bắt đầu bằng 1 ký số. JMP Start làm cho chương trình nhảy về và làm lại các lệnh từ lúc đầu. Cuối nhãn phải có dấu 2 chấm. Ví dụ: Start: 3/ Điều khiển động cơ bước: Nếu bạn quan sát kỹ động cơ bước, bạn có thể thấy được mỗi cuộn dây được điều khiển bởi một bit tương ứng. Ta có thể tìm ra các bit 0 hay 1 để thiết lập trạng thái của cuộn dây. Sử dụng bảng số Hex và số nhị phân trong phần phụ lục để tìm ra số Hex tương ứng. Đưa số Hex này vào thanh ghi AL. 4/ Lệnh OUT 05 (xuất ra P.05): Lệnh này dùng để chuyển nội dung của thanh ghi AL ra Port 5. Vì hệ thống đèn giao thông được nối với port 5, nên ta có thể điều khiển các cuộn dây theo nội dung trên thanh ghi AL. Số 1 làm cho cuộn dây có điện, số 0 làm cho cuộn dây mấtù điện. Với cùng một yêu cầu có thể viết chương trình theo nhiều cách khác nhau để thoả mãn các yêu cầu đề bài đặt ra. Chương trình 1: ; chương trình điều khiển động cơ bước --------------------------------------------- CLO ; đóng tất cả các cửa sổ không dùng Start: ________________________________________________________________________________________________________ Trang 116 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang MOV AL,01 ; chuyển 01h vào thanh ghi AL OUT 05 ; cuộn dây thứ nhất có điện MOV AL,02 ; chuyển 11111100 (hay FCh) vào thanh ghi AL OUT 05 ; cuộn dây thứ 2 có điện MOV AL,04 ; chuyển 00h vào thanh ghi AL OUT 05 ; cuộn dây thứ 3 có điện MOV AL,08 ; chuyển 11111100 (hay FCh) vào thanh ghi AL OUT 05 ; cuộn dây thứ 4 có điện MOV AL,04 ; chuyển 00h vào thanh ghi AL OUT 05 ; cuộn dây thứ 3 có điện MOV AL,02 ; chuyển 11111100 (hay FCh) vào thanh ghi AL OUT 05 ; cuộn dây thứ 2 có điện MOV AL,01 ; chuyển 00h vào thanh ghi AL OUT 05 ; cuộn dây thứ 1 có điện JMP Start ; nhảy về nhãn start để thực hiện lại chương trình END ; kết thúc chương trình ;------------------------------------------------------------------------------------------- 4.8.3.2 Bài toán 2: Chương trình động cơ bước sử dụng bảng dữ liệu. ________________________________________________________________________________________________________ Trang 117 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Mục đích -yêu cầu: Giúp sinh viên hiểu về bảng dữ liệu và cách sử dụng bảng trong viết chương trình. Kiến thức nền: 1/ Lệnh DB 01 : DB là chữ viết tắt của Define Byte. Lệnh này khai báo số 01H được cất trong RAM tại địa chỉ [02]. Địa chỉ [00] và [01] dành cho mã máy của lệnh JMP Start. 01H đổi sang số nhị phân là 0000 0001. 2/ MOV BL,02: Chuyển 02 vào thanh ghi BL. [02] là địa chỉ RAM bắt đầu của bảng dữ liệu. BL được sử dụng như là một con trỏ để chỉ đến bảng dữ liệu. 3/ MOV AL,[BL]: [BL] chỉ đến bảng dữ liệu. Lệnh này chuyển một giá trị từ bảng dữ liệu vào thanh ghi AL. 4/ Lệnh OUT 05: Dùng để gởi nội dung của thanh ghi AL tới port 05. Port 05 được kết nối với động cơ bước . 5/ CMP AL,58: 00 là địa chỉ truy xuất cuối cùng của bảng dữ liệu. Nếu AL chứa 00, nó cần để reset BL chỉ lại về đầu bảng và sẵn sàng để lập lại trình tự. Nếu AL = 00, cờ "Z" trong CPU sẽ được thiết lập. 6/ Lệnh JZ Start: Dùng để nhảy về lại nhãn start nếu cờ "Z" trong CPU được set. 7/ Lệnh INC BL: Tăng BL lên 1 để BL chỉ tới địa chỉ kế tiếp trong bảng dữ liệu. Chương trình: ; Chương trình điều khiển động cơ bước ------------------------------------ ________________________________________________________________________________________________________ Trang 118 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang CLO ;đóng tất cả các chương trình không dùng tới JMP Start ;nhảy đến nhãn Start bỏ qua bảng dữ liệu DB 01 DB 02 DB 04 DB 08 DB 04 DB 02 DB 01 DB 00 Start: MOV BL,02 ;02 là địa chỉ bắt đầu của bảng dữ liệu Rep: MOV AL,[BL] ;chuyển dữ liệu từ bảng đến AL OUT 05 ;xuất từ thanh ghi AL đến port 5 CMP AL,58 ;so sánh địa chỉ cuối trong bảng dữ liệu JZ Start ;nếu có thì nhảy đến nhãn start INC BL ;nếu không thì BL chỉ đến mục kế tiếp JMP Rep ;Lập lại vòng lập END ;kết thúc chương trình ________________________________________________________________________________________________________ Trang 119 Simpo PDF Merge and Split Unregistered Version - Bài giảng môn học Điện tử công nghiệp Gv: Nguyễn Phương Quang Sau khi đã tự mình giải được bài tập trên nếu bạn thích hãy giải tiếp bốn bài tập củng cố trong bài tập này của giáo trình điện tử. 4.8.4 Bài tập củng cố Các bài tập củng cố ở phần này vẫn nằm trong lĩnh vực điều khiển tốc độ động cơ điện. Tuy nhiên bạn vẫn có thể lấy nội dung này để điều khiển các thiết bị ngoại vi khác trong chương trình mô phỏng. Đó cũng chính là điểm mạch của vi xử lý / vi điều khiển. - Bài tập 1: Viết chương trình điều khiển động cơ bước quay đúng một vòng rồi dừng lại với mỗi bước quay là 10o (điều khiển động cơ quay theo dạng đơn cực trọn bước). - Bài tập 2: Viết chương trình điều khiển động cơ bước quay đúng một vòng rồi dừng lại với mỗi bước quay là 5o (điều khiển động cơ quay theo dạng đơn cực nửa bước). - Bài tập 3: Viết chương trình điều khiển động cơ bước tuần tự quay thuận một vòng rồi quay nghịch nửa vòng, giữa chu kỳ quay thuận và nghịch có thời điểm dừng – quay liên tục. - Bài tập 4: Viết chương trình điều khiển động cơ bước tuần tự quay thuận một vòng rồi quay nghịch nửa vòng, giữa chu kỳ quay thuận và nghịch có thời điểm dừng. - Bài tập 5: Viết chương trình điều khiển động cơ bước tuần tự quay thuận một vòng rồi quay nghịch nửa vòng, giữa chu kỳ quay thuận và nghịch không có thời điểm dừng. ________________________________________________________________________________________________________ Trang 120 Simpo PDF Merge and Split Unregistered Version - Tài Liệu Tham Khảo Gvth: Nguyễn Phương Quang TÀI LIỆU THAM KHẢO 1/ George M. Chute và Robert D.Chute – ELECTRONICS IN INDUSTRY – Mcgraw – Hill book company. 1991. 2/ Lê Hoài Quốc và Chung Tấn Lâm – BỘ ĐIỀU KHIỂN LẬP TRÌNH: VẬN HÀNH VÀ ỨNG DỤNG – NXB Khoa học kỹ thuật. 1999. 3/ Vũ Quang Hồi, Nguyễn Văn Chất và Nguyễn thị Liên Anh – TRANG BỊ ĐIỆN – ĐIỆN TỬ (MÁY CÔNG NGHIỆP DÙNG CHUNG) - NXB Giáo dục. 2003. 5/ Dương Minh Trí – CẢM BIẾN VÀ ỨNG DỤNG - NXB Khoa học kỹ thuật. 2001. 6/ Nguyễn Văn Nhờ – TRUYỀN ĐỘNG ĐIỆN - NXB Đại học quốc gia Tp Hồ Chí Minh, 2002.. 7/ Nguyễn Văn Nhờ – ĐIỆN TỬ CÔNG SUẤT 1 – NXB Đại học quốc gia Tp Hồ Chí Minh, 2003 8/ Nguyễn Chu Hùng - ĐIỆN CÔNG NGHỆ - NXB Đại học quốc gia thành phố Hồ Chí Minh. 2001. 9/ David W.Pessen – INDUCTRIAL AUTOMATION: Circuit Design and Components - A Willey-Interscience Publication JOHN WILEY & SONS. 1990. 10/ E.Armenski + G.Falk – MICROMACHINES ÉLECTRIQUES - Éditions MIR.MOSCOU. 1991. 11/ Hoàng Kiến Quốc + Đặng Văn Bình – ỨNG DỤNG VI MẠCH TRONG HỆ THỐNG TỰ ĐỘNG ĐIỀU CHỈNH TỐC ĐỘ ĐỘNG CƠ - NXB Thành phố Hồ Chí Minh. 1992. 12/ George M. Chute và Robert D.Chute - SOLID STATE IN INDUSTRIAL ELECTRONICS - Mcgraw – Hill book company. 1991. 13/ Vũ Quang Hồi – TRANG BỊ ĐIỆN TỬ CÔNG NGHIỆP – NXB Giáo dục.2003. 14/ Jame W. Dally - INSTRUMENTATION FOR ENGINEERING MEASUREMENTS - John Wiley & Sons, 1984. 15/ Phan Quốc Phô + Nguyễn Đức Chiến - GIÁO TRÌNH CẢM BIẾN - NXB Khoa học kỹ thuật. 2002. ____________________________________________________________________ Bài giảng Điện tử công nghiệp Simpo PDF M rge nd Split Unregistered Version - Tài Liệu Tham Khảo Gvth: Nguyễn Phương Quang 16/ Tymothy J.Maloney – MODERN INDUSTRIAL ELECTRONICS (Fouth Edition) – Prentice Hall. Inc, 2002. 17/ Jacob Fraden - HANDBOOK OF MODERN SENSORS: PHYSICS, DESIGNS, AND APPLICATIONS (HANDBOOK OF MODERN SENSORS), Springer Pub. 2003 18/ Malcolm Barnes - PRACTICAL VARIABLE SPEED DRIVES AND POWER ELECTRONICS (PRACTICAL PROFESSIONAL BOOKS FROM ELSEVIER), Newnes Pub, 2003. 19/ Roland Burnes – ADVANCED CONTROL ENGINEERING – Butterworth Heinemann Publication, 2003. 20/ Matthias Nau, - ELECTRICAL TEMPERATURE MEASUREMENT with Thermoscoupler & Resistance Thermosmeter – M.K JUCKHHEIM FUIDA, 2002. 19/ Tài liệu “Hướng dẫn sử dụng PLC của hãng OMRON” 20/ Tài liệu từ viện SIVAT – Hàn Quốc Và từ nhiều trang web khác … ____________________________________________________________________ Bài giảng Điện tử công nghiệp Simpo PDF M rge nd Split Unregistered Version -

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

  • pdfGiáo trình điện tử công nghiệp.pdf