Giáo trình Hệ thống sản xuất tự động hóa với PLCs - Phần 9: Chốt, bấm giờ, bộ đếm và một số thứ khác

9. CHỐT, BẤM GIỜ, BỘ ĐẾM VÀ MỘT SỐ THỨ KHÁC  
Chủ đề:  
Các chốt, các bộ bấm giờ, các bộ đếm và các MCR  
Các ví dụ thiết kế  
Các vị trí bộ nhớ bên trong là có sẵn, và làm việc như là đầu ra  
Mục tiêu:  
Hiểu các chốt, các bộ bấm giờ, các bộ đếm và các MCR.  
Có khả năng lựa chọn các bit bộ nhớ bên trong đơn giản.  
9.1 GIỚI THIỆU  
Các hệ thống phức tạp hơn không thể được điều khiển với logic tổ hợp một  
mình. Lý do chính cho điều này là ta không thể, hay lựa chọn không thêm các cảm  
biến để phát hiện mọi trạng thái. Trong các trường hợp này ta có thể dùng các sự  
kiện để đánh giá tình trạng của hệ thống. Các sự kiện thông thường được sử dụng  
bởi một PLC bao gồm:  
-
-
-
-
quét đầu của PLC – chỉ thị PLC này đã mới được bật lên  
thời gian khi một đầu vào được bật/tắt – một độ trễ  
đếm các sự kiện – để chờ cho tới số tập hợp của các sự kiện đã xảy ra  
chốt hay mở chốt – để khóa một vài thứ bật hay tắt nó đi  
Chủ đề thông thường của mọi loại sự kiện này là chúng dựa trên một trong hai  
câu hỏi “Bao nhiêu?” (How many?) hay “Bao lâu?” (How long?). Một ví dụ của một  
thiết bị dựa trên sự kiện được chỉ trong hình 9.1. Đầu vào cho thiết bị này là một nút  
bấm. Khi nút này được bấm đầu vào cho thiết bị này được bật lên. Nếu nút này sau  
đó là được nhả ra và thiết bị được tắt, nó là một thiết bị logic. Nếu khi nút này được  
nhả thiết bị vẫn bật, nó sẽ là một loại của thiết bị dựa trên sự kiện. Để nhắc lại, thiết  
bị là thiết bị dựa trên sự kiện nếu nó có thể phản hồi tới một hay nhiều hơn những  
thứ mà những thứ này đã xuất hiện trước đó. Nếu thiết bị này phản hồi chỉ một cách  
tới tới tập hợp trực tiếp của các đầu vào, nó là logic.  
Ví dụ: Một nút bấm Start (bắt đầu)  
Figure 9.1 An Event Driven Device – Một thiết bị điều khiển bởi sự kiện  
9.2 CÁC CHỐT  
Một chốt giống như một chuyển mạch que – khi được nhấn nó sẽ bật lên,  
nhưng vẫn cắm vào, nó phải được kéo lên để nhả ra và tắt nó đi. Một chốt trong logic  
bậc thang dùng một câu lệnh để chốt, và một câu lệnh thứ hai để mở chốt, như trong  
hình 9.2. Đầu ra với một L bên trong sẽ bật đầu ra D lên khi đầu vào A trở nên true  
(đúng). D sẽ duy trì là bật (on) thậm chí nếu A là tắt (off). Đầu ra D sẽ tắt nếu đầu vào  
B trở nên đúng và đầu ra với một U bên trong trở nên đúng (Ghi chú: điều này sẽ  
dường như hơi hơi là một lùi lúc đầu tiên). Nếu một đầu ra đã được chốt, nó sẽ giữ  
giá trị của nó, thậm chí khi nguồn điện đã bị ngắt.  
Figure 9.2 A Ladder Logic Latch – Một chốt logic bậc thang  
Hoạt động của logic bậc thang trong hình 9.2 được minh họa với một sơ đồ thời  
gian trong hình 9.3. Một sơ đồ thời gian chỉ ra các giá trị của các đầu vào và các đầu  
ra theo thời gian. Ví dụ giá trị của đầu vào A bắt đầu thấp (sai) và trở nên cao (đúng)  
trong một khoảng thời gian ngắn, và sau đó lại trở về thấp. Ở đây khi đầu vào A bật  
cả hai đầu ra cũng bật. Có một độ trễ nhẹ (yếu) giữa việc thay đổi trong các đầu vào  
và các thay đổi kết quả trong các đầu ra, trong suốt thời gian quét chương trình. Ở  
đây các đường đứt quãng thể hiện quét đầu ra, việc kiểm tra tính đúng và quét đầu  
vào (giả sử chúng là rất ngắn). Khoảng trống giữa các đường đứt quãng là quét logic  
bậc thang. Xem xét khi A ban đầu là bật nó không được phát hiện cho đến dòng đứt  
quãng đầu tiên. Sau đó có một độ trễ tới đường đứt quãng tiếp theo trong khi logic  
bậc thang này được quét, và sau đó đầu ra tại đường đứt quãng tiếp theo. Khi A cuối  
cùng tắt, đầu ra thông thường C tắt, nhưng chốt đầu ra D vẫn là bật. Đầu vào B sẽ mở  
chốt đầu ra D. Đầu vào B sẽ mở chốt D. Đầu vào B bật lên hai lần, nhưng lần đầu tiên  
nó không đủ dài để được phát hiện bởi một quét đầu vào, vì thế nó bị bỏ qua. Lần  
thứ hai nó là bật nó mở chốt đầu ra D và đầu ra D tắt.  
(Ghi chú của người gõ:  
Những dòng này chỉ ra các lần làm tươi đầu vào/đầu ra PLC. Tại lúc này mọi đầu  
vào được cập nhật, và mọi đầu ra được đọc. Nhớ rằng một vài đầu vào có thể bị bỏ  
qua nếu tại thời gian sai, và có thể có một độ trễ giữa một thay đổi trong đầu vào, và  
một thay đổi trong đầu ra.  
Khoảng trống giữa các dòng là thời gian quét cho logic bậc thang. Các khoảng  
trống có thể khác nhau nếu các phần khác nhau của sơ đồ logic bậc thang này được  
thực thi mỗi lần qua bậc thang này (như với mã khoảng trống trạng thái). Khoảng  
trống này là một chức năng của tốc độ của PLC, và số lượng của các thành phần logic  
bậc thang trong chương trình.  
)
Figure 9.3 A Timing Diagram for the Ladder Logic in Figure 9.2  
Một sơ đồ thời gian cho logic bậc thang trong hình 9.2  
Sơ đồ thời gian trong hình 9.3 có nhiều chi tiết hơn là thông thường như trong  
một sơ đồ trong hình 9.4. Xung rút gọn sẽ không được mong muốn một cách bình  
thường, và sẽ được thiết kế bên ngoài một hệ thống hoặc bằng cách mở rộng độ dài  
của xung, hay giảm thời gian quét xuống. Một hệ thống lý tưởng sẽ chạy nhanh đến  
nỗi các răng cưa sẽ không thể được.  
Figure 9.4 A Typical Timing Diagram – Một sơ đồ thời gian phổ biến  
Một ví dụ phức tạp hơn của các chốt được chỉ ra trong hình 9.5. Trong ví dụ này  
các địa chỉ là cho một bộ điều khiển Allen-Bradley Micrologix. Các đầu vào bắt đầu  
với I/, được theo sau bởi một con số đầu vào. Các đầu ra bắt đầu với O/, theo sau bởi  
một con số đầu ra.  
Figure 9.5 A Latch Example – Một ví dụ về chốt  
Một đầu ra bình thường chỉ nên xuất hiện một lần trong logic bậc thang, nhưng  
các dòng lệnh chốt và mở chốt có thể xuất hiện nhiều lần. Trong hình 9.5 một đầu ra  
bình thường O/2 được nhắc lại hai lần. Khi chương trình chạy nó sẽ kiểm tra dòng  
thứ tư và thay đổi giá trị của O/2 trong bộ nhớ (nhớ rằng quét đầu ra không xuất  
hiện cho tới khi quét bậc thang xong). Dòng cuối cùng là sau khi thông dịch và nó sẽ  
ghi đè giá trị của O/2. Cơ bản là, chỉ dòng cuối cùng sẽ thay đổi O/2.  
Các chốt không được sử dụng một cách rộng rãi bởi các nhà cung cấp PLC,  
những nhà cung cấp khác như Siemens dùng các mạch lật (flip-flops). Những cái này  
có một cách làm việc tương tự như các chốt, nhưng một chú ý của sự khác biệt như  
được minh họa trong hình 9.6. Ở đây mạch lật là một khối đầu ra mà khối này được  
nối với hai bậc logic khác nhau. Bậc đầu tiên được chỉ ra rằng có một đầu vào A được  
kết nối tới đầu cuối thiết đặt S. Khi A đi tới đúng (true) giá trị đầu ra Q sẽ đi đến  
đúng. Bậc thứ hai có một đầu vào B kết nối tới đầu cuối thiết đặt đặt lại R. Khi B đi tới  
đúng giá trị đầu ra Q sẽ được tắt. Đầu ra Q sẽ luôn là giá trị đảo ngược của Q. Nhớ  
rằng các giá trị S và R là tương đương với các giá trị L và U từ các ví dụ trước.  
Figure 9.6 Flip-Flops for Latching Values – Các mạch lật cho các giá trị chốt  
9.3 CÁC BỘ BẤM GIỜ  
Có bốn loại bộ bấm giờ cơ bản được chỉ trong hình 9.7. Một bộ bấm giờ độ trễ-  
bật sẽ chờ trong một thời gian được cài đặt sau một dòng của logic bậc thang đã là  
đúng trước khi bật, nhưng nó sẽ tắt một cách ngay lập tức. Một bộ bấm giờ độ trễ-  
tắt sẽ bật ngay lập tức khi một dòng của logic bậc thang là đúng, nhưng nó sẽ có trễ  
trước khi tắt. Xem xét ví dụ của một xe hơi cổ. Nếu bạn chỉnh chìa khóa trong ổ đánh  
điện nhưng xe hơi này không bắt đầu ngay lập tức, đó là một độ trễ-bật. Nếu bạn  
chỉnh chìa khóa để dừng động cơ này nhưng nó không dừng sau một vài giây, đó là  
một độ trễ-tắt. Một bộ bấm giờ độ trễ-bật có thể được sử dụng cho phép một lò đạt  
tới nhiệt độ trước khi bắt đầu làm việc. Một bộ bấm giờ độ trễ-tắt có thể giữ các  
quạt làm mát bật trong một khoảng thời gian cài đặt sau khi lò này đã được tắt.  
độ trễ-bật  
RTO  
độ trễ-tắt  
RTF  
TON – Bộ bấm giờ bật ON  
TOF - Bộ bấm giờ tắt OFf  
RTO – Bộ bấm giờ giữ lại bật On  
RTF - Bộ bấm giờ giữ lại tắt oFf  
duy trì  
(giữ lại )  
không duy trì  
(không giữ lại)  
TON  
TOF  
Figure 9.7 The Four Basic Timer Types – Bốn loại bộ bấm giờ cơ bản  
Một bộ bấm giờ giữ lại sẽ cộng lại thời gian bật hay thời gian tắt cho một bộ  
bấm giờ, thậm chí nếu bộ bấm giờ này không bao giờ kết thúc. Một bộ bấm giờ  
không giữ lại sẽ bắt đầu đo độ trễ thời gian từ không mỗi lần. Các ứng dụng thông  
dụng cho các bộ bấm giờ giữ lại bao gồm theo dõi thời gian trước khi bảo trì là cần  
đến. Một bộ bấm giờ không giữ lại có thể dùng cho một nút bắt đầu để cho một trễ  
ngắn trước khi một băng chuyền bắt đầu di chuyển.  
Một ví dụ của một bộ bấm giờ Allen-Bradley TON được chỉ ra trong hình 9.8.  
Bậc có một đầu ra đơn lẻ A và một khối chức năng cho bộ bấm giờ TON này. (Ghi  
chú: Khối bộ bấm giờ này trông sẽ khác với các PLC khác, nhưng nó bao gồm cùng  
một thông tin). Thông tin trong khối bộ bấm giờ này mô tả các tham số thời gian.  
Mục đầu tiên là số bộ bấm giờ T4:0. Đây là một vị trí trong bộ nhớ của PLC mà bộ  
nhớ này sẽ lưu thông tin bộ bấm giờ đó. Chữ T4: chỉ ra rằng nó là bộ nhớ bộ bấm giờ,  
và 0 chỉ ra là đấy là vị trí bộ nhớ đầu tiên. Thời gian cơ sở là 1,0 chỉ ra rằng bộ bấm  
giờ sẽ làm việc trong các khoảng 1,0 giây. Các thời gian cơ sở khác là có sẵn trong các  
phân số và các bội số của nhiều giây. Giá trị đặt trước là độ trễ cho bộ bấm giờ, trong  
trường hợp này là 4. Để tìm ra thời gian trễ nhân thời gian cơ sở bởi giá trị đặt trước  
4*1,0s = 4,0s. Giá trị tích lũy cho giá trị hiện thời của bộ bấm giờ bằng 0. Trong khi bộ  
bấm giờ này đang chạy giá trị được tích lũy sẽ tăng lên cho tới khi nó đạt tới giá trị  
đặt trước. Bất cứ khi nào đầu vào A là đúng đầu ra EN sẽ là đúng. Đầu ra DN sẽ là sai  
cho đến khi giá trị tích lũy đã đạt đến giá trị đặt trước. Các đầu ra EN và DN không  
thể bị thay đổi khi lập chương trình, nhưng đây là những cái quan trọng khi dò lỗi  
một chương trình logic bậc thang. Dòng thứ hai của logic bậc thang sử dụng đầu ra  
bộ bấm giờ DN để điều khiển đầu ra B khác.  
Figure 9.8 An Allen-Bradley TON Timer – Một bộ bấm giờ TON của Allen-Bradley  
Sơ đồ thời gian trong hình 9.8 minh họa hoạt động của bộ bấm giờ TON với một  
độ trễ-bật 4 giây. A là đầu vào của bộ bấm giờ này, và bất cứ khi nào đầu vào bộ bấm  
giờ này là đúng thì bit cho phép EN của bộ bấm giờ này sẽ cũng là đúng. Nếu giá trị  
tích lũy là bằng với giá trị đặt trước thì bit DN sẽ được thiết đặt. Ngược lại, bit TT sẽ  
được thiết đặt và giá trị tích lũy sẽ bắt đầu tăng. Lần đầu A là đúng, nó chỉ đúng trong  
3 giây trước khi tắt, sau đó giá trị này được đặt lại bằng không (0). (Ghi chú: trong  
một bộ bấm giờ giữ lại giá trị sẽ tồn tại trong 3 giây). Lần thứ hai A là đúng nó là bật  
hơn 4 giây. Sau 4 giây bit TT tắt, và bit DN bật. Nhưng khi A được nhả ra (giải phóng)  
giá trị tích lũy đặt lại trở về không (0), và bit DN sẽ bị tắt.  
Một giá trị nào đó có thể được vào giá trị tích lũy này trong khi lập trình. Khi  
chương trình được tải về giá trị này sẽ ở trong bộ bấm giờ cho lần quét đầu tiên. Nếu  
bộ bấm giờ TON là không được phép giá trị này được đặt trở lại tới không (0).  
Thường thường 0 sẽ được cho vào như là giá trị đặt trước.  
Bộ bấm giờ trong hình 9.9 là giống hệt như hình 9.8, ngoại trừ nó là bộ đếm giữ  
lại. Sự khác biệt rõ nhất là khi đầu vào A được tắt giá trị tích lũy không được đặt lại  
về không. Kết quả là bộ bấm giờ này bật sớm hơn nhiều, và bộ bấm giờ này không tắt  
sau khi nó bật. Một câu lệnh đặt lại sẽ được chỉ ra sau mà câu lệnh này sẽ cho phép  
giá trị tích lũy được đặt lại về không.  
Figure 9.9 An Allen Bradley Retentive On-Delay Timer  
Một bộ bấm giờ độ trễ-bật giữ lại của Allen Bradley  
Một bộ bấm giờ độ trễ-tắt được chỉ trong hình 9.10. Bộ bấm giờ này có một  
thời gian cơ sở của 0,01 giây, với giá trị đặt trước là 350, cho một độ trễ tổng là 3,5  
giây. Như trước đây EN cho phép bộ đếm này phù hợp với đầu vào. Khi đầu vào A là  
đúng bit DN là bật. Nó cũng là bật khi đầu vào A đã bị tắt và giá trị tích lũy đang được  
đếm. Bit DN chỉ tắt khi đầu vào A đã được tắt đủ lâu để giá trị tích lũy đạt đến giá trị  
đặt trước. Loại bộ bấm giờ này là không giữ lại, vì vậy khi đầu vào A là đúng, giá trị  
tích lũy được đặt lại.  
Figure 9.10 An Allen Bradley Off-Delay Timer  
Một bộ bấm giờ độ trễ-tắt của Allen Bradley  
Các bộ bấm giờ độ trễ-tắt giữ lại có một vài ứng dụng và hiếm khi được dùng, vì  
vậy nhiều nhà cung cấp PLC không sản xuất chúng.  
Một chương trình ví dụ được chỉ ra trong hình 9.11. Tổng cộng có bốn loại bộ  
bấm giờ được dùng trong ví dụ này, T4:1 tới T4:4. Các câu lệnh bộ bấm giờ được chỉ  
ra với một ký hiệu tốc ký với thời gian cơ sở và các giá trị đặt trước được kết hợp như  
là độ trễ. Tất cả bốn loại của bộ bấm giờ có đầu vào I/1. Đầu ra O/1 sẽ bật khi bộ bấm  
giờ TON T4:1 được làm xong. Cả bốn bộ bấm giờ có thể được đặt lại với đầu vào I/2.  
Figure 9.11 A Timer Example – Một ví dụ về bộ bấm giờ  
Một sơ đồ thời gian cho ví dụ này được chỉ ra trong hình 9.12. Khi đầu vào I/1  
được bật các bộ bấm giờ TON và RTO bắt đầu đếm và đạt tới 4 giây và bật lên. Khi I/2  
trở nên đúng nó đặt lại cả hai bộ bấm giờ và chúng bắt đầu đếm cho một giây khác  
trước khi I/1 được tắt. Sau khi đầu vào này được tắt cả TOF và RTF bắt đầu đếm,  
nhưng không có cái nào đạt tới 4 giây - giá trị đặt trước. Đầu vào I/1 lại được bật lên  
và cả hai TON và RTO bắt đầu đếm. Bộ RTO bật lên một giây sớm hơn vì nó có 1 giây  
được lưu giữ từ khoảng thời gian 7-8 giây. Sau khi I/1 lại tắt cả hai bộ đếm độ trễ-tắt  
đếm xuống, và đạt tới 4 giây trễ, và bật lên. Những mẫu làm việc này tiếp tục đi qua  
sơ đồ ấy.  
Figure 9.12 A Timing Diagram for Figure 9.11  
Một sơ đồ thời gian cho hình 9.11  
Xem xét chương trình logic bậc thang ngắn trong hình 9.13 cho điều khiển một  
lò nhiệt. Hệ này được bắt đầu với một nút Start (bắt đầu) mà nút này được dành  
riêng trong chế độ tự động. Điều này có thể bị dừng lại nếu nút Stop (dừng lại) được  
nhấn. (Ghi chú: các nút Stop là thường đóng). Khi chế độ tự động bắt đầu bộ TON  
được dùng để phát âm thanh cho 10 giây đầu tiên để báo rằng lò sẽ bắt đầu làm việc,  
và sau đó tiếng tắt và bắt đầu làm nóng cuộn dây. Khi lò này bị tắt quạt tiếp tục thổi  
khoảng 300 giây hay 5 phút sau đó.  
Ghi chú: Ở phần còn lại của văn bản này tôi sẽ dùng ký hiệu được rút ngắn cho  
các bộ bấm giờ được chỉ ra ở trên. Điều này tiết kiệm giấy và giảm đi sự nhầm lẫn.  
Figure 9.13 A Timer Example – Một ví dụ bộ bấm giờ  
Một chương trình được chỉ ra trong hình 9.14 sẽ làm nháy một đèn một lần mỗi  
giây. Khi PLC này bắt đầu, bộ bấm giờ thứ hai sẽ tắt và bit T4:1/DN sẽ tắt, vì vậy đầu  
vào thường đóng tới bộ bấm giờ đầu tiên sẽ bật. T4:0 sẽ bắt đầu tính giờ cho đến khi  
nó đạt đến 0,5 giây, khi nó làm xong bộ bấm giờ thứ hai sẽ bắt đầu tính giờ, cho đến  
khi nó đạt đến 0,5 giây. Tại thời điểm đó T4:1/DN sẽ trở nên đúng, và đầu vào cho  
lần đầu tiên sẽ trở nên sai. T4:0 sau đó được đặt lại giá trị là không (0), và sau đó  
T4:1 được đặt lại giá trị là không (0). Và quá trình bắt đầu lại từ đầu. Trong ví dụ này  
bộ bấm giờ thứ nhất được dùng để điều khiển bộ bấm giờ thứ hai. Kiểu sắp xếp này  
thường được gọi là xếp chồng, và có thể dùng hơn là hai bộ bấm giờ đó.  
Figure 9.14 Another Timer Example – Một ví dụ khác về bộ bấm giờ  
9.4 CÁC BỘ ĐẾM  
Có hai loại bộ bấm giờ cơ bản: đếm lên và đếm xuống. Khi đầu vào một bộ đếm  
lên là đúng giá trị tích lũy sẽ tăng lên 1 (cho dù đầu vào này là đúng trong bao lâu).  
Nếu giá trị tích lũy này đạt tới giá trị đặt trước thì bit DN bộ đếm sẽ được thiết đặt.  
Một bộ đếm xuống sẽ giảm giá trị tích lũy này cho tới khi giá trị đặt trước được đạt  
đến.  
Một dòng lệnh đếm lên (CTU) Allen Bradley được chỉ ra trong hình 9.15. Dòng  
lệnh này đòi hỏi bộ nhớ trong PLC để lưu các giá trị và trạng thái, trong trường hợp  
này là C5:0. C5: chỉ ra rằng đó là bộ nhớ bộ đếm, và 0 chỉ ra rằng nó là vị trí đầu tiên.  
Giá trị đặt trước là 4 và giá trị tích lũy là 2. Nếu đầu vào A là từ sai thành đúng giá trị  
tích lũy sẽ tăng lên thành 3. Nếu A là tắt, sau đó lại bật giá trị tích lũy sẽ tăng lên  
thành 4, và bit DN sẽ giữ nguyên. Việc đếm có thể tiếp tục khi cao hơn giá trị đặt  
trước. Nếu đầu vào B là đúng giá trị trong bộ tích lũy bộ đếm (giá trị tích lũy) sẽ trở  
thành không (0).  
Figure 9.15 An Allen Bradley Counter – Một bộ đếm Allen Bradley  
Các bộ đếm xuống là tương tự với các bộ đếm lên. Và chúng cả hai thực sự có  
thể được sử dụng trong cùng một vị trí bộ nhớ bộ đếm. Xem xét ví dụ trong hình  
9.16, đầu vào ví dụ I/1 điều khiển câu lệnh đếm lên cho bộ đếm C5:1. Đầu vào I/2  
điều khiển câu lệnh đếm xuống cho cùng một vị trí bộ nhớ bộ đếm. Giá trị đặt trước  
cho một bộ đếm được lưu trong vị trí bộ nhớ C5:1 để cả hai câu lệnh bộ đếm lên và  
câu lệnh bộ đếm xuống phải có cùng một giá trị đặt trước. Đầu vào I/3 sẽ đặt lại giá  
trị cho bộ đếm này.  
Figure 9.16 A Counter Example – Một ví dụ về bộ đếm  
Sơ đồ thời gian trong hình 9.16 minh họa sự hoạt động của bộ đếm. Nếu ta giả  
sử rằng giá trị tích lũy bắt đầu từ không (0), sau đó các đầu vào I/1 làm cho nó đếm  
lên tới 3 ở đó nó bật bộ đếm C5:1. Nó sau đó được đặt lại giá trị bởi đầu vào I/3 và  
giá trị tích lũy trở về không. Đầu vào I/1 sau đó xung động một lần nữa và làm cho giá  
trị đặt trước lại tăng lên, cho đến khi nó đạt tới một cực đại là 5. Đầu vào I/2 sau đó  
làm cho giá trị tích lũy giảm xuống dưới 3, và bộ đếm này lại tắt. Đầu vào I/1 sau đó  
làm cho nó tăng giá trị, nhưng đầu vào I/3 đặt lại giá trị tích lũy trở về không một lần  
nữa, và các xung động tiếp tục cho tới khi 3 được đạt đến gần kết thúc.  
Chương trình trong hình 9.17 được dùng để bỏ đi 5 trong mỗi 10 phần từ một  
băng chuyền với một xy lanh khí nén. Khi vật thể này được phát hiện cả hai bộ đếm  
sẽ tăng giá trị của chúng lên 1. Khi phần thứ 6 đến bộ đếm đầu tiên sẽ sau đó được  
thực hiện xong, do đó cho phép xy lanh khí nén này truyền động cho bất cứ vật thể  
nào sau phần thứ năm. Bộ đếm thứ hai sẽ tiếp tục cho tới vật thể thứ mười một  
được phát hiện và sau đó cả hai bộ đếm này sẽ bị đặt lại (giá trị).  
Figure 9.17 A Counter Example – Một ví dụ về bộ đếm  
9.5 CÁC RƠ LE ĐIỀU KHIỂN CHÍNH (MCRs)  
Trong một hệ điều khiển điện một Rơ le điều khiển chính (MCRs) được dùng để  
tắt một phần nào đó của một hệ điện nào đó, như được chỉ ra trước đây trong  
chương đi dây điện. Khái niệm này cũng đã được thực thi trong logic bậc thang. Một  
phần của logic bậc thang có thể được đặt giữa hai dòng bao gồm có chứa các thành  
phần của MCR. Khi cuộn MCR đầu tiên được kích hoạt, mọi phần của logic bậc thang  
trung gian này được thực thi tới dòng thứ hai với một cuộn dây MCR. Khi cuộn dây  
MCR đầu tiên là thôi kích hoạt, logic bậc thang này vẫn được kiểm tra, nhưng mọi  
đầu ra là bị tắt bắt buộc.  
Xem xét ví dụ trong hình 9.18. Nếu A là đúng, sau đó logic bậc thang sau sẽ  
được thực thi như bình thường. Nếu A là sai logic bậc thang theo sau sẽ được kiểm  
tra, nhưng mọi đầu ra sẽ bị tắt bắt buộc. Chức năng MCR thứ hai xuất hiện trong một  
dòng một mình và đánh dấu kết thúc của một khối MCR. Sau MCR thứ hai việc thực  
hiện chương trình trở lại bình thường. Trong khi A là đúng, X sẽ bằng B, và Y có thể  
được bật bởi C, và tắt bởi D. Nhưng, nếu A trở nên sai X sẽ là tắt bắt buộc, và Y sẽ bị  
xóa trong trạng thái cuối cùng của nó. Việc dùng các khối MCR để loại trừ các phần  
của các chương trình sẽ không tăng tốc độ thực hiện chương trình một cách đáng kể  
bởi vì logic này vẫn được kiểm tra.  
Ghi chú: Nếu một đầu vào thông thường được dùng bên trong một khối MCR nó  
sẽ bị tắt bắt buộc. Nếu đầu ra này cũng được dùng trong các khối MCR khác thì cái  
cuối cùng sẽ bị tắt bắt buộc. MCR được thiết kế cho dừng toàn bộ phần của logic bậc  
thang một cách đầy đủ, và cách này được sử dụng tốt nhất trong các thiết kế logic  
bậc thang.  
Figure 9.18 MCR Instructions – Các câu lệnh MCR  
Nếu khối MCR gồm có một chức năng (hàm) khác, như là một bộ bấm giờ TON,  
khi tắt khối MCR này sẽ bắt buộc bộ bấm giờ này là tắt. Như một luật thông thường  
các đầu ra bình thường nên ở ngoài các khối MCR, trừ khi chúng phải được tắt bắt  
buộc khi khối MCR này là tắt.  
9.6 CÁC RƠ LE BÊN TRONG  
Các đầu vào được dùng để đặt các đầu ra trong các chương trình đơn giản.  
Những chương trình phức tạp hơn cũng dùng các vị trí bộ nhớ bên trong mà các vị trí  
bộ nhớ này không là các đầu ra hay các đầu vào. Chúng thỉnh thoảng được nhắc đến  
như là các ‘rơ le bên trong’ (internal relays) hay các ‘rơ le điều khiển’ (control relays).  
Các lập trình viên có kinh nghiệm sẽ thường nhắc đến chúng như là ‘bộ nhớ bit’ (bit  
memory). Trong các PLC của Allen Bradley các địa chỉ này bắt đầu mặc định là ‘B3’.  
Bit đầu tiên trong bộ nhớ là ‘B3:0/0’, trong đó số không đầu tiên đại diện cho từ  
(word) 16 bit đầu tiên, và số không thứ hai tương ứng với bit đầu tiên trong từ này.  
Thứ tự các bit được chỉ ra trong hình 9.1 9. Lập trình viên là tự do để sử dụng các vị  
trí bộ nhớ này bằng bất cứ cách nào họ thấy phù hợp.  
Figure 9.19 Bit memory – Bộ nhớ bit  
Một ví dụ của việc dùng bộ nhớ bit được chỉ ra trong hình 9. 20. Bậc logic bậc  
thang đầu tiên sẽ bật bit bộ nhớ bên trong ‘B3:0/0’ khi đầu vào ‘hand_A’ được kích  
hoạt, và đầu vào ‘clear’ là tắt. (Nhớ rằng bộ nhớ B3 là đang được dùng như cả hai  
một đầu vào và một đầu ra). Dòng thứ hai của logic bậc thang này tương tự. Trong  
trường hợp này khi cả hai đầu vào đã được kích hoạt, đầu ra ‘press_on’ là kích hoạt.  
Figure 9.20 An example using bit memory – Một ví dụ sử dụng bộ nhớ bit  
Bộ nhớ bit đã được nhắc đến ngắn gọn ở đây bởi vì nó quan trọng cho các kỹ  
thuật thiết kế trong các chương sau, nhưng nó sẽ được trình bày sâu hơn sau đó.  
9.7 CÁC TRƯỜNG HỢP THIẾT KẾ  
Các trường hợp thiết kế sau được trình bày để giúp nhấn mạnh các nguyên tắc  
được trình bày trong chương này. Tôi đề nghị rằng bạn cố gắng phát triển logic bậc  
thang trước khi nhìn vào các lời giải được đưa ra.  
9.7.1 Các bộ đếm và các bộ bấm giờ cơ bản  
Bài toán: Phát triển một logic bậc thang mà sẽ bật một đèn đầu ra, 15 giây sau  
khi chuyển mạch A đã được bật.  
Lời giải:  
Figure 9.21 A Simple Timer Example – Một ví dụ bộ bấm giờ đơn giản  
Bài toán: Phát triển logic bậc thang mà sẽ bật một đèn, sau khi chuyển mạch A  
đã được đóng 10 lần. Nhấn nút B sẽ đặt lại (reset) các bộ đếm này.  
Lời giải:  
Figure 9.22 A Simple Counter Example – Một ví dụ bộ đếm đơn giản  
9.7.2 Vài bộ bấm giờ và bộ đếm khác  
Bài toán: Phát triển một chương trình mà sẽ chốt một đầu ra B 20 giây sau khi  
đầu vào A đã được bật. Sau khi A được nhấn, sẽ có một trễ 10 giây cho đến khi A có  
thể có bất cứ tác dụng nào trở lại. Sau khi A đã được nhấn 3 lần, B sẽ bị tắt.  
Figure 9.23 A More Complex Timer Counter Example  
Một ví dụ bộ đếm bộ bấm giờ phức tạp hơn  
9.7.3 Chuyển mạch nền tảng  
Bài toán: Một động cơ sẽ được điều khiển bởi hai chuyển mạch. Chuyển mạch  
Go sẽ khởi động động cơ và chuyển mạch Stop sẽ dừng nó. Nếu chuyển mạch Stop  
đã được dùng để dừng động cơ, thì chuyển mạch Go phải được nhấn (thrown) hai  
lần để khởi động động cơ này. Khi động cơ này là kích hoạt một đèn sẽ được bật.  
Chuyển mạch Stop sẽ được nối dây như là thường đóng.  
Lời giải:  
Hãy xem xét: Điều gì sẽ xảy ra nếu nút stop được nhấn và động cơ này là đang  
không chạy?  
Figure 9.24 A Motor Starter Example – Một ví dụ về động cơ khởi động  
9.7.4 Băng tải  
Bài toán: Một băng tải được chạy bởi đóng ngắt mạch một động cơ. Ta đang  
đánh dấu vị trí của các vật thể trong băng tải này với một máy dò quang học. Khi cảm  
biến quang này là chạy, ta muốn đợi 1,5 giây, và sau đó dừng băng chuyền. Sau một  
thời gian trễ là 2 giây băng chuyền lại tiếp tục hoạt động. Ta cần dùng một nút start  
và một nút stop – một đèn là bật khi hệ này là kích hoạt.  
Lời giải:  
- Điều gì được giả định về đi và đến của vật thể?  
Figure 9.25 A Conveyor Controller Example – Một ví dụ về bộ điều khiển băng tải  
9.7.5 Phân loại Chấp nhận/Từ chối  
Bài toán: Đối với các băng tải trong trường hợp cuối cùng ta sẽ thêm một hệ  
phân loại. Các đồng hồ đã được nối để chỉ ra là tốt hay xấu. Nếu vật thể là tốt, nó  
tiếp tục. Nếu vật thể này là xấu, ta không muốn trì hoãn trong 2 giây, nhưng thay vì  
thế là truyền động một xy lanh khí lực.  
Figure 9.26 A Conveyor Sorting Example – Một ví dụ về phân loại băng chuyền  
9.7.6 Cắt Ép  
Bài toán: Các yêu cầu cơ bản là:  
1. Một chuyển mạch bắt đầu chuyển đổi (TS1) và một chuyển mạch giới  
hạn trong một cổng an toàn (LS1) cả hai phải đều bật trước khi một cuộn  
cảm (SOL1) có thể được cấp nguồn để kéo dài một xy lanh dập tới đỉnh của  
một vật thể nào đó.  
2. Trong khi cuộn cảm dập được cấp nguồn, nó sẽ duy trì dòng cho đến  
khi một chuyển mạch giới hạn (LS2) được kích hoạt. Chuyển mạch giới hạn  
thứ hai này chỉ ra điểm kết thúc của một chu kỳ. Tại thời điểm này cuộn  
cảm phải được ngắt nguồn, vì vậy rút lại xy lanh này.  
3. Khi xy lanh này là được rút lại một cách đầy đủ một chuyển mạch giới  
hạn (LS3) được kích hoạt. Chu kỳ này sẽ không bắt đầu lại cho tới khi  
chuyển mạch giới hạn này là kích hoạt.  
4. Một bộ đếm chu kỳ cũng phải được tính đến để cho phép đếm các vật  
thể được sản xuất ra. Khi giá trị này vượt quá 5000 máy này phải được tắt  
và một đèn sáng lên.  
5. Một kiểm tra an toàn phải được tính đến. Nếu cuộn cảm xy lanh này đã  
được bật trong hơn 5 giây, nó cho thấy rằng xy lanh bị kẹt hay máy này có  
một lỗi. Trong trường hợp này, máy phải được tắt và một đèn bảo trì được  
bật.  
Lời giải:  
- Ta cần làm gì khi máy này được đặt lại?  
Figure 9.27 A Shear Press Controller Example – Một ví dụ bộ điều khiển Cắt Ép  
9.8 TÓM TẮT  
Các dòng lệnh chốt và mở chốt sẽ giữ cho các đầu ra bật, thậm chí khi nguồn  
điện bị cắt.  
Các bộ bấm giờ có thể trì hoãn việc bật hay tắt. Các bộ bấm giờ giữ lại sẽ giữ  
các giá trị, thậm chí khi thôi kích hoạt. Các thiết đặt lại là cần thiết cho các bộ  
bấm giờ giữ lại.  
Các bộ đếm có thể đếm lên hay đếm xuống.  
Khi các bộ bấm giờ và các bộ đếm đạt tới một giới hạn đặt trước bit DN được  
thiết đặt.  
Tải về để xem bản đầy đủ
pdf 33 trang baolam 30041 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Hệ thống sản xuất tự động hóa với PLCs - Phần 9: Chốt, bấm giờ, bộ đếm và một số thứ khác", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_he_thong_san_xuat_tu_dong_hoa_voi_plcs_phan_9_cho.pdf