ngừ vào cho JMP(04) là OFF thỡ bước nhảy được thi hành. Khi đú chương trỡnh tiếp tục thực hiện tại JME(05).
Khi số nhảy N của JMP(04) từ 01 đến 99 thỡ con trỏ lập tức chuyển đến JME(05) cựng với số nhảy tương ứng. Tất cảc cỏc lệnh ở giữa JMP(04) và JME(05) khụng được thực hiện, trạng thỏi của cỏc Timer, Counter, Bit Out, Out not và tất cả trạng thỏi của bit điều khiển khỏc đều khụng thay đổi. Số nhảy này chỉ đụnh nghĩa cho một lần nhảy.
Khi số nhảy của JMP(04) là 00, Cpũe tỡm đến JME(05) kế cú số nhảy N=00. Để thực hiện, nú kiểm tra toàn bộ chương trỡnh tất cả những lệnh và bit điều khiển nằm ở giữa JMP(04) 00 và JME(05) 00 được giữ
nguyờn. số nhảy 00 cú thể được sử dụng nhiều lần đối với JMP(04) mà chỉ cần một đớch nhảy đến JME(05).
Vớ dụ: Chương trỡnh thang như sau:
Cỏc lệnh được nhập vào theo PLC OMNRON
Địa chỉ Lệnh Dữ liệu 00000 LD 00000 00001 JMP(04) 01 00002 LD 00001 00003 Lệnh 1 00004 LD 00002 JM P (0 4 ) 0 1 L ệ n h 1 L ện h 2 JM E (0 5 ) 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 2
Giải thớch:
Khi IR 00000 = ON thỡ chương trỡnh thực hiện từ lệnh 1 đến lệnh 2. khi IR00000 = OFF thỡ lệnh1 và lệnh 2 được bỏ qua. Chương trỡnh sẽ thực hiện cỏc lệnh tiếp theo.
4.3.18 Lệnh chuyển dữ liệu MOV(21):
Ký hiệu trong chương trỡnh thang.
Trong đú:
S : là word nguồn. D: là word đớch.
Khi điều kiện thực hiện ngừ vào là OFF, lệnh MOV(21) khụng thực hiện. Khi điều kiện ngừ vào là ON lệnh MOV(21) sẽ sao chộp toàn bộ
nội dung của S sang D.
Vớ dụ:
Sử dụng lệnh MOV(21) sao chộp nội dung của IR001 cho HR 05 khi IR00000 chuyển từ OFF sang ON.
Sơđồ thang.
Chương trỡnh được viết như sau:
Địa chỉ Lệnh Toỏn tử 00000 LD 00000 00001 MOV(21) 01 MOV(21) S D
Word nguồn Word đích
Trạng thái bit không thay đổi
HR05001 001 MOV(21) 00000
HR05
4.3.19 Lệnh MVN(22) Move Not:
Kớ hiệu trong chương trỡnh thang.
Trong đú:
S : là word nguồn. D: là word đớch.
Khi điều kiện thực hiện ngừ vào là ON, lệnh MVN(22) sẽ sao chộp nội dung đảo của S sang D. Mỗi bit ON của S tương ứng với bit OFF trong D và bit OFF của S tương ứng với bit ON trong D.
4.3.20 Lệnh tớnh toỏn BCD( Binary Code Decimal) – SET CARRY
STC(40)
Kớ hiệu trong chương trỡnh thang.
Khi tớn hiệu của ngừ vào là OFF, lệnh STC(40) khụng thực hiện. STC(40) chỉ thực hiện khi ngừ vào là ON.
4.3.21 Lệnh tớnh toỏn CLC – CLEAR CARRY (CLC(41) )
Kớ hiệu trong chương trỡnh thang.
Khi tớn hiệu của ngừ vào là OFF, lệnh CLC(41) khụng thực hiện. CLC(41) chỉ thực hiện khi ngừ vào là ON.
DS S MVN(22)
STC(40)
Trong đú:
Au: Augen word.(Word đó cú) Ad: Addend word.(Word bị cộng) R : Result word.( Word kết quả)
Chỉ dựng vựng nhớ DM 0000 đến DM 1023. DM 6144 đến DM6655 khụng được dựng cho R.
Khi tớn hiệu của ngừ vào là OFF, lệnh ADD(30) khụng thực hiện. ADD(30) chỉ thực hiện khi ngừ vào là ON. Khi đú ADD(30) sẽ cộng nội dung của Au và Ad rồi đặt kết quả trong R.
4.3.23 Lệnh SUB(31) Trừ BCD.
Kớ hiệu dựng trong chương trỡnh thang: Trong đú:
Mi: Word bị trừ
Su: Word trừ
R : Result word.( Word kết quả)
Chỉ dựng vựng nhớ DM 0000 đến DM 1023. DM 6144 đến DM6655 khụng được dựng cho R.
Khi tớn hiệu của ngừ vào là OFF, lệnh SUB(31) khụng thực hiện. SUB(31) chỉ thực hiện khi ngừ vào là ON. Khi đú SUB(31) sẽ trừ nội dung của Mi cho Su rồi đặt kết quả trong R.
4.3.24 Lệnh MUL(32) Nhõn BCD (BCD MULTIPLY).
Kớ hiệu dựng trong chương trỡnh thang:
Md: Multiolicand (BCD) Mr: Multiplier (BCD) Su M i SU B (2 1) R Mr Md MUL(32) R ADD(30) Au Ad R
R : Result word.
Chỉ dựng vựng nhớ DM 0000 đến DM 1023. DM 6144 đến DM6655 khụng được dựng cho R.
Khi tớn hiệu của ngừ vào là OFF, lệnh MUL(32) khụng thực hiện. MUL(32) chỉ thực hiện khi ngừ vào là ON. Khi đú MUL(32) sẽ nhõn nội dung của Md cho Mr rồi đặt kết quả trong R và R+1:
Xột vớ dụ cú chương trỡnh thang như trờn:
Khi IR00001 mà ON thỡ nội dung của IR013 và DM00006 được nhõn và kết quả được đặt trong HR07 và HR 08.
Dữ liệu và tớnh toỏn như sau:
4.3.25 Lệnh DIV(33) BCD DIVIDE (chia BCD)
Kớ hiệu dựng trong chương trỡnh thang:
Md Mr R R+1 MUL(32) 00001 DM0006 013 HR 07 Md: IR013 3 3 5 6 5 2 0 0 Mr: DM00005 R+1: HR08 8 R: HR07 3 9 0 0 0 0 0 DIV(33)
Dd: Dividend (BCD) Mr: Divisorword (BCD) R : Result word.
Chỉ dựng vựng nhớ DM 0000 đến DM 1023. DM 6144 đến DM6655 khụng được dựng cho R.
Khi tớn hiệu của ngừ vào là OFF, lệnh DIV(33) khụng thực hiện. DIV(33) chỉ thực hiện khi ngừ vào là ON. Khi đú DIV(33) sẽ chia nội dung của Dd cho Dr rồi đặt kết quả trong R và R+1, thương số đặt trong R và số dưđặt trong R+1:
Vớ du:
Xột sơđồ thang sau:
Khi IR00000 ON, lệnh DIV(33) sẽđược thực thi
Nội dung của IR216 sẽ được chia cho nội dung của HR09 kết quả được
đặt trong DM0017 và DM0018.
4.3.26 Lệnh so sỏnh CMP(20).
Kớ hiệu dựng trong chương trỡnh thang:
00000 DM0017 DM0017 216 HR09 DIV(33) Dd: IR216 Dr: HR09 0 0 0 4 4 2 0 0 R:DM0017 1 0 5 0 0 0 Số chia Số bị chia Thuơng số Số du R+1: DM0018 0 0 CMP(20)
Trong đú:
CP1: Word so sỏnh thứ nhất: CP2: Word so sỏnh thứ hai:
Lệnh CMP(20) dựng so sỏnh dữ liệu CP1 và CP2 và xuất hiện cỏc kết quả ra cỏc cờ GL, EQ, LE trong vựng SR( Special Registers).
EQ: ON nếu CP1 = CP2. LE: ON nếu CP1 < CP2. GL: ON nếu CP1 > CP2. Bảng cỏc trạng thỏi của cỏc cờ: Cờ Địa chỉ CP1 < CP2 CP1 = CP2 CP1>CP2 GR 25505 OFF OFF ON EQ 25506 OFF ON OFF LE 25507 ON OFF OFF 4.3.27 Bộ đếm lặp lại CNTR(12).
Kớ hiệu dựng trong chương trỡnh thang:
Trong đú: N là chỉ số CNTR(12).
SV: là giỏ trị đặt trong DM, HR, LR, SR…
CNTR là một bộ đếm theo hai chiều. Nú được dựng để đếm giữa giỏ trị đặt SV và 0 theo sự chuyển đổi một trong hai điều kiện đú là ngừ vào tăng II và ngừ vào giảm DI. CNTR (12) N SV II DI R
Khi gớ trị hiện tai PV giảm đến 00 thỡ PV sẽ được đặt về giỏ trị SV và cờ hoàn toàn được bật thành ON cho đến khi giỏ trị PV giảm trở lại. Khi giỏ trị PV tăng lờn tới SV thỡ giỏ trị PV được đặt về 0 và cờ hoàn thành được bật sang ON cho đến khi giỏ trị PV tăng trở lại.
4.3.28 Lệnh High Speed Timer -TIMH (15)
Kớ hiệu dựng trong chương trỡnh thang:
Trong đú: N là chỉ số TIMH(15).
SV: là giỏ trị đặt trong DM, HR, LR, SR…
Giỏ trị SV đặt trong TIM(15) chạy từ 00,00 giõy đến 99,99 giõy. Hoạt
độnh của TIMH(15) giống như lệnh TIM.
4.3.29 Lệnh PRV(62) – High Speed Counter Pvread.
Kớ hiệu dựng trong chương trỡnh thang:
Trong đú: P :là port riờng: 001, 002, 003.
C :là dữ liệu điều khiển 001, 002, 003. D :là Word đớch đầu tiờn SR, DM, HR…
Khi điều kiện thực hiện ngừ vào là ON, lệnh PRV (62) đọc dữ liệu đó
định ở P và C rồi ghi nú vào D hay D +1.
Port riờng P xỏc định tốc độ xuất xung của Counter.
TIMH (15)N N SV C P PRV(62) D
Port (P) Chức năng
001 Chỉ định Counter tốc độ cao 0 hay xuất xung từ
một bit
002 Chỉ định Counter tốc độ cao 1 hay xuất xung từ
Port1
003 Chỉ định Counter tốc độ cao 2 hay xuất xung từ
port 2
C: Dữ liệu điều khiển xỏc định loại dữ liệu xử lý truy xuất
C Dữ liệu Word đớch
001 Giỏ trị hiện tại PV của Counter tốc độ cao D & D +1 002 Trạng thỏi của Counter tốc độ cao hay xuất
xung
D 003 Dóy kết quả so sỏnh D
4.3.30 Lệnh Root (72) – Squre Root ( Căn bậc hai).
Kớ hiệu dựng trong chương trỡnh thang:
Trong đú: Sq: là word nguồn đầu; R: là word kết quả
DM6144 tới DM6655 khụng được dựng trong R.
Khi trạng thỏi của ngừ vào là OFF lệnh ROOT(72) khụng thực hiện, khi trạng thỏi của ngừ vào là ON lệnh ROOT(72) sẽ khai căn của Sq rồi cất kết quả trong R.
Vớ du:
RSq Sq ROOT(72)
Vớ dụ trờn mụ tả sự khai căn của một số 8 số, kết quả của nú là một số 4 số và được làm trũn.
Do: 63250561 = 7953.0221
Nờn kết quảđược làm trũn là:
4.3.31 Lệnh END (01).
Kớ hiệu dựng trong chương trỡnh thang:
Lệnh này được đặt ở cuối chương trỡnh, nếu khụng cú lệnh này trong chương trỡnh thỡ toàn bộ chương trỡnh sẽ khụng được thực hiện.
Sau khi PLC gặp lệnh này thỡ chương trỡnh lại được lặp lại từ đầu chứ
khụng phải hết ( hết một chu trỡnh). 4.4 Một số lệnh lập trỡnh phổ biến khỏc của OMRON. 4.4.1 Bộ định thời TIMER: END(01) DM0000 6 3 2 5 0 5 6 1 D M 0 0 0 1 9 7 5 3
Vớ dụ: Timer cú set value = 100x0.1=10 giõy.
Khi bật khoỏ CH000.00 lờn, Timer số 000 sẽ bắt đầu đếm thời gian, khi 10 giõy trụi qua, tiếp điểm của Timer là TIM000 sẽđược bật lờn ON và làm đầu ra CH010.00 cũng được bật lờn ON. Timer cũng sẽ bị reset về
giỏ trị đặt khi đầu vào 00000 tắt.
Bộ Timer này cú thời gian được lưu trong DM 0000. PLC sẽ lấy giỏ trị
trong DM0000 làm giỏ trị cài đặt cho Timer. Giả sử nội dung của DM0000 là 150. Khi bật khoỏ CH000.00 lờn, Timer số 000 sẽ bắt đầu
đếm thời gian, khi được 15 giõy (150x0.1=15) tiếp điểm của timer là TIM 000 được bật lờn ON và làm đầu ra CH0100.00 cũng được bật lờn ON.
4.4.2Bộ đếm COUNTER.
Lỳc khởi đầu giỏ trị hiện hành của bộ đếm được bắt đầu tại SV. Bộđếm sẽ giảm giỏ trị hiện hành của nú (CNT N) đi một đơn vị mỗi lần cú sườn lờn ở xung đầu vào CP và cờ bỏo hoàn thành CNT N sẽ bật lờn giỏ trị hiện hành của bộ đếm giảm về 0. Bộđếm sẽ bị reset về giỏ trị đặt SV khi cú sườn lờn của đầu vào R.
Mỗi lần bật khoỏ CH000.00 giỏ trị của Counter giảm đi một . khi bật khoỏ CH000.00 đủ 10 lần thỡ cờ bỏo CNT000 bật lờn ON và do đú cũng bật đầu ra CH0101.00 lờn ON. Bộ đếm sẽ bị reset khi bật switch CH000.01.
Do thời gian đặt tối đa của timer là 0.278 giờ nờn để tăng thời gian đếm của timer, ta cú thể dựng kết hợp với Counter như sau:
Vớ dụ: Mở rộng thời gian đặt lờn 10 giờ
Vớ dụ ứng dụng của bộ đếm:
Trong vớ dụ này ta sẽ lập trỡnh PLC cho cụng đoạn đúng gúi sản phẩm vào bao bỡ. Đõy là cụng đoạn rất hay gặp trong cỏc dõy chuyền sản xuất. Trờn hỡnh ta thấy cỏc sản phẩm hoàn thiện được băng chuyền chuyển tới cỏc thiết bị đúng bao. Cứ 5 sản phẩm đúng vào một bao. Cú một cảm biến quang điện làm nhiệm vụ phỏt hiện sản phẩm trờn băng chuyền và gửi tớn hiệu xung về bộ đếm trong PLC. Mỗi khi đếm đủ 5 sản phẩm, bộ đếm gửi tớn hiệu ra cho cuộn hỳt solenoid làm việc. Thời gian cuộn hỳt làm việc là hai giõy. trong thời gian cuộn hỳt làm việc, băng truyền ngừng chạy.
Trường hợp này, ta cú một đầu vào duy nhất là tớn hiệu xung từ cảm biến, đặt là bit 00.2 đầu ra sẽ là tớn hiệu gửi cuộn hỳt, đặt là 1001, và tớn hiệu ngừng băng truyền đặt là 1000.
Chương trỡnh cần lập sẽ như sơđồ sau:
Bỡnh thường cuộn hỳt khụng làm việc, băng truyền chạy nhờ cú tiếp
điểm thường đúng 1001 ở trạng thỏi OFF. Lỳc này cảm biến sẽ gửi tớn hiệu xung về PLC mỗi khi cú sản phẩm đi qua và đầu vào lỳc này được dựng làm đầu vào đếm của bộ đếm CNT 0. Khi cú đủ 5 sản phẩm tiếp
điểm CNT sẽ đúng, reset counter về giỏ trị ban đầu là 5, đồng thời gửi tớn hiệu cho cuộn hỳt và timer làm việc trong mạch tự giữ. Lỳc này
băng truyền ngừng chạy do tiếp điểm 1001 ngắt mạch hoạt động của
đầu ra 1000. Sau hai giõy tiếp điểm TIM001 sẽ ngắt nguồn hoạt động của cuộn hỳt và băng truyền tiếp tục chạy, lặp lại chu trỡnh.
Chỳ ý: Lệnh END ở cuối chương trỡnh chỉ đỏnh dấu việc kết thỳc chu
trỡnh làm việc hiện hành của PLC và bắt đầu chu trỡnh mới từ lệnh đầu tiờn chủa chương trỡnh. Nú khụng cú ý nghĩa là chương trỡnh sẽ dừng. Chương trỡnh chỉ dừng khi ta chuyển chế độ sang Program Mode hoặc cú sự cố bờn trong PLC.
4.5 Lập trỡnh bằng phần mềm SYSWIN trờn mỏy tớnh.
4.5.1 Phần mềm SYSWIN:
SYSWIN là một phần mềm lập trỡnh cho PLC OMRON dưới dạng Ledder Daigram thực thụ chạy trong WINDOW. Để cài đặt phần mềm này cần đảm bảo mỏy tớnh cú cấu hỡnh tối thiểu như sau:
Windows 3.1, 3.11 ,Windows95, Windows98
ắ >486 DX50 CPU
ắ >8 M Byte Ram
ắ >10 MB Free HDD (Đĩa cứng trống)
4.5.2 Lập trỡnh với SYSWIN
1) chọn folder nơi lưu SYSWIN và khởi độnh chương trỡnh Vớ dụ:
PLC Type chọn CPM1 CPU chọn ALL
Series chọn C Editor chọn Ladder
Project Type chọn Program
Interface chọn Serial Communications Bridge chọn Option Direct
Moden chọn Option Local
Codding Option chọn SYSWIN Way
Ta lựa chọn cỏc mục trờn ở hộp hội thoại New Project Setup tiếp theo là Click OK
3) Màn hỡnh sẽ hiện ra một khung làm việc cho chương trỡnh dạng Ladder Daigram.
Dựng chuột di đến thanh cụng cụ ( Drawing Tool ) và nhấn vào biểu tượng tiếp điểm (Contact) hoặc nhấn phớm F2 để chọn lệnh này.
Di chuột đến nơi cần đặt tiếp điểm trờn sơ đồ và nhấn nỳt trỏi chuột.
Đỏnh vào địa chỉ 000.00 ở ụ Address và nhấn OK trờn hộp thoại trờn. Màn hỡnh sẽ hiện ra một network mới với tiếp điểm vừa nhập và ụ chọn màu đen chuyển sang vị trớ bờn cạnh tiếp điểm này.
Làm tương tự như vậy với cỏc tiếp điểm tiếp theo
Đỏnh vào ụ Address địa chỉ 000.01 rồi nhấn OK.
Tiếp theo từ thanh cụng cụ chọn lệnh Output rồi di chuột đến vị trớ cần
Đỏnh vào ụ Address địa chỉ 010.00 rồi nhấn OK.
Nhận lệnh OR bằng cỏch tạo ra một tiếp điểm nối song song với tiếp
điểm đầu tiờn trờn network.
Trờn thanh cụng cụ chọn tiếp điểm contact
Và đặt nú dưới tiếp điểm đầu tiờn là 000.00
Gừ vào ụ Address địa chỉ 000.02 và nhấn OK.
Tiếp theo nối tiếp điểm vừa tạo với tiếp điểm nằm trờn bằng cỏch chọn cụng cụ Vertical Short rồi nhấn chuột vào vị trớ nằm giữa hai dũng hoặc nhấn F5
Để xoỏ tiếp điểm CH000.01, nhấn con trỏ chuột ở tiếp điểm này ( hoặc dựng bàn phớm di ụ chọn đến tiếp điểm) sau đú nhấn phớm DEL hoặc từ
menu Edit chọn Delete.
Nếu muốn phục hồi lại lệnh vừa xoỏ, chọn Undo từ menu này.
Hiện ta đó nhập xong một network của chương trỡnh. Để thờm network mới vào ta nhấn vào nỳt Insert Network
Từ hộp thoại hiện ra, chọn vị trớ nơi sẽ chốn Network. ở đõy ta sẽ chốn Network mới vào phớa dưới network hiện hành nờn ta sẽ chọn Below Curent Network và nhấn OK
Giả sử Network mới này là lệnh END (01). Đặt vị trớ con trỏ vào vị trớ ụ đầu tiờn của network, sau đú bấm phớm F8 để chốn lệnh Function vào ụ trúng đú. Để chọn lệnh cần thiết, cú thể đỏnh mó lệnh ( ở đõy là 01 )
đỏnh tờn lệnh hoặc lựa Function từ một danh sỏch cú sẵn bằn cỏch nhấp vào nỳt Select. Ngoài ra cú thể tham khảo thờm về lệnh bằng cỏch nhấp vào nỳt Reference.
Gừ END vào ụ Function rồi nhấn OK để kết thỳc
Chương trỡnh hoàn chỉnh ta vừa nhập cú dạng như hỡnh sau:
4.5.3 Đặt tờn kớ hiệu mụ tả (SYMBOL) cho cỏc địa chỉ.
tả địa chỉ chỉ cú thể đỏnh vào ụ Com. Lưu tờn vừa đặt bằng cỏch bấm
nỳt STORE
4.5.4 Nạp chương trỡnh vào PLC ( Download Program to PLC )
Nối mỏy tớnh PC với bộ PLC qua bộ chuyển đổi cỏp RS232C. Đầu cắm của bộ chuyển đổi sẽ nối vào cổng Peripheral Port của PLC
Sau khi việc nối cỏc thiết bị đẵ được mỏy tớnh nhận biết. Từ menu Oline, chọn Connect để kết nối với PLC. Sau khi mỏy tớnh đó kết nối
được với PLC, đốn COMM trờn PLC sẽ nhấp nhỏy và cỏc mục khỏc trờn menu Online sẽ trở thành màu đen( được phộp chọn lựa)
Cũng từ menu Online chọn Download Program. Một hộp thoại sau đõy sẽ hiện ra hỏi ta cú xoỏ bộ nhớ chương trỡnh trong PLC khụng (Clear