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:
127 trang |
Chia sẻ: aloso | Lượt xem: 2778 | Lượt tải: 1
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:
- Giáo trình điện tử công nghiệp.pdf