đk 8led đơn dùng máy tính qua cổng song songlpt 4.. đk led ma trận dùng pic giao tiếp PC qua cổng LPT 5.. ĐK tốc độ động cơ một chiều dùng pic giao tiếp com PID số 7.. tính +-*/ xuất nhậ
Trang 1thí nghiệm đo lường điều khiển bằng máy tính
b1: mở đầu
b2: đk qua cổng song song
b3: đk led, lcd bằng cổng nt
b4: hệ thống đk nhiệt độ
b5: đk tốc độ động cơ DC
b6: điều khiển vị trí động cơ DC
b7: đk qua cổng usb: card 6008 và phần mềm labview
b8: Card thu thập dự liệu và đk pci-1711 và pci-6221
thi
BT ở lớp (ĐTB) 50%
thi làm mạch 50%
Đề tài
2sv/1 đề tài 2 nhóm trùng
1 đk 8led đơn dùng pic16f887/877a giao tiếp máy tính qua cổng nt (com)
2 ĐK LCD qua com
3 đk 8led đơn dùng máy tính qua cổng song song(lpt)
4 đk led ma trận dùng pic giao tiếp PC qua cổng LPT
5 ĐK nhiệt độ giao tiếp PC qua cổng COM (// on/off)
6 ĐK tốc độ động cơ một chiều dùng pic giao tiếp com (PID số)
7 đk động cơ bước dùng pic giao tiếp pc qua cổng com (pp on/off)
8 đk 8led dùng card 6008 và lập trình labview
Trang 2bài 1: mở đầu
I.vb 6.0
thí dụ: viết ct hiện thị thông báo “Chao cac ban lop DHDT6A” và ngày giờ
- tạo 1 nút nhấn, khi ta nhấn vào thù ct sẽ hiện thị thông báo
bước 1:
b2: file new project>> standrad.exe
b3: kéo thả nút nhấn vào
b4:viết mã lệnh
private sub Command1_click()
msgBox “Chao cac ban lop DHDT6A” &Now
End Sub
2 kiểu dữ liệu
- số nguyên: integer
khai báo: DIM tên biến as kiểu
vd: DIM a as interger
a=5
- số nguyên dài: long 32bit
DIM b as long
b=100 000
- số thực: single hay double
DIM C as double
c=3.14
- kiểu chuỗi: String
Trang 3DIM d as string
d = “Xin chao”
d$=”Xin chao”
3 cấu trúc điều khiển
a lệnh if… then…else
ex: if a>b then max=a
bài tập từ trang 1-4 trang 21
1 nhâp 2 số nguyên a,b tính tổng hiệu tích phương td:
DIM a as integer
a= InputBox(“a=”)
xuất MsgBox
2 nhập 2 số thực a,b tính +-*/
xuất nhập dùng textbox
*hàm CDbl(biến string): đổi chuyển thành số ex:
DIM a as double
DIM b as double
DIM c as double
a= CDbl(Text1.text)
b= CDbl(Text2.text)
c=a+b
*cstr(số thực): đổi số >> chuổi
Trang 4text3.text= cstr(c)
3 giải pt bậc nhất ax+b=0 (a<>0)
4 giải ptb2 ax^2+bx+c=0
trang 118
tr91, nguyễn đức thành, viết tập tin inout.dll dùng vc++
Trang 5*lệnh case: >> lệnh có nhiều chọn lựa select case biến
case giá trị 1 to giá trị 2
lệnh 1
case điều kiện/ giá trị
lệnh 2
case is điều kiện
lệnh 3
case else
lệnh 4
end select
ex:
select case lương
case 1000 to 2000
heeesothue =0.1
case is > 2000
hesothue = 0.3
case else
hesothue = 0
end select
b lệnh vòng lặp:
* vòng lặp for: >> số lần lặp biết trước
Trang 6cú pháp: for biến = giá trị 1 to giá trị 2
lệnh
next
ý nghĩa: thực hiện lệnh vs số lần là gtri2-gtri1 + 1, mỗi lần biến tăng lên 1 khi biến > gtri
2 thì kết thúc vòng lăp
thí dụ: tính tổng S= 1+2+…+N
với N nhặp từ bàn phím
* vòng lặp while: >> số lần lặp không biết trước
cú pháp:
do
lệnh
loop until/while điều kiện
giải thích: chương trình thực hiện ít nhất một lần Khi đk đúng thì thoát khỏi vòng lặp s=0
i=1
do
s=s+i
i=i+1
loop until i>N
4 Chương trình con
- thủ tục
Trang 7- hàm
gọi thủ tục >> là một câu lệnh
gọi hàm >> 1 phép gắn
* thủ l=tục
cú pháp:
private sub tên ctc (Byval đối số, ByRef đối số,…) lệnh
end sub
giải thích: CTC bắt đầu là privete sub tên CTC :
:
end sub
Byval >> truyền theo trị
ByRef>> truyền theo tham chiếu (địa chỉ)
đối số sẽ lưu giá trị khi ra khỏi CTC
vd:
Tìm số lớn hơn trong 2 số
tạo 1 nút nhấn nhấn vô CT yêu cầu nhập 2 số a.b
và in ra số lớn hơn
*Hàm:
Private Funciton tên CTC (Byval đối số,…) as kiểu lệnh
end funciton
Trang 8gt: Hàm phải trả về 1 giá trị, giá trị này phải đc gián vào chính tên hàm
BT: 5-9 trang 21,22
nâng cao 1-4 trang 22, 23
bài 5: tính tổng S= 1+2+…100
b6: viết ctrinh tính diện tích và chu vi của hình tròn
pi.r^2 / 2piR
b7: tạo giao diện đk nhiệt độ
b8: viết dòng text thực hiện thông báo
“chào mừng các bạn lớp DHDT6A”
b9: viết ct tạo giao diện tổng hợp
Nâng cao:
1 viết chương trình tạo giao diện đk 8led đơn chạy đuổi, sáng dần, tắt dần và 2 bìa vào
2 đk thang máy
3 viết ctrinh tạo giao diện đống ngắt các thiết bị trong gia đình
4 tạo giao diện đk đèn giao thông
Private Sub Command1_Click()
Shape1.BackColor = &HFF&
Call Delay(2)
Shape2.BackColor = &HFF&
Call Delay(2)
Shape3.BackColor = &HFF&
End Sub
Trang 9Public Sub Delay(HowLong As Date)
TempTime = DateAdd("s", HowLong, Now) While TempTime > Now
DoEvents 'Allows windows to handle other stuff Wend
End Sub
Trang 10Bài 2: Điều khiển qua cổng song song hợp ngữ 8086
xuất:
mov dx,378h
mov ax,1h
out dx,ax
nhập:
mov dx,379h
in ax,dx
mov data,ax
thí dụ: dùng ngôn ngữ C
xuất: outportb (0x378,0x1);
nhập: int x;
x=inportb(0x379);
Trang 11option Explicit
dim i as integer
dim ltp as integer
private declase sub portout lib “io.dll” (byval port as integer, byval data as byte) private declase function portout lib “io.dll” (byval port as integer) as byte
private sub delay()
dim j as long
for j = 1 to 20 000 000
next
end sub
private sub command1_click()
portout &H378,&H1
delay
portout &H378,&H2
delay
:
:
:
portout &H378,&H80
delay
endsub
Trang 12Thực hành
1 viết ctrinh dieu khien 8led dung cong LPT chạy đuổi, sáng dần, tắt dần, và 2 bìa vào ra
2 led matraanj dùng at89c51 qua cổng LPT
3 ledmatran dung pic qua cổng lpt
Trang 13buổi 4: điều khiển led đơn, lcd qua cổng nối tiếp
1 chớp tắt led dùng portd
2 đk 8 led: đuổi, sáng dần, tắt daanfm 2 bìa vào ra
3 điều khiển lcd: hiện thị : KHOA CN DIEN TU
PHẦN2: ĐIỀU KHIỂN QUA CỔNG NỐI TIẾP <P132>
1 KIỂM TRA KẾT NỐI CỔNG COM GIỮA PC VÀ PIC : 132
2 ĐIỀU KHIỂN 8led đơn, giao tiếp máy tính
3 đk lcd dùng pic, giao tiếp máy tính qua cổng com
buổi 6,7:
1 đo nhiệt độ và hiển thị giá trị ADC lên LCD
2 Đo nhiệt độ và hiển thị máy tính => tìm hàm truyền lò nhiệt trang 184-193
3 ĐK on off
4 đk tỉ lệ Kp, PID trang 220
buổi 8:
1 khảo sát hệ hở và tìm hàm truyền động cơ DC
2 đk on off
quay thuận + nghịch + start + stop + chạy nhanh, chạy chậm
3 pid số 274 + 300
buổi 9:
1 điều khiển vị trí góc động cơ tr 336
2 đk vị trí trên thướcª
Buổi 12
Card thu thập dữ liệu và điều khiển PCI 1711/ pci 6221
Điều khiển PLC
1 Tiềm hiểu card PCI 1711 / pci 6221
2 Cài driver
+ đặc điểm của card PCI 1711/ 6221
Trang 143 Điều khiển khí nén dùng PLC