MỤC LỤC
Đặt vấn đề là an toàn, tức là đưa ra mọi khả năng, mọi tình huống có thể xảy ra trong khi sử dụng thang máy để tính toán, có biện pháp đề phòng và xử lý thích hợp, nhanh chóng. Khi cabin chạy quá hành trình cho phép (Over travel) do bộ điều khiển không bình thường hoặc vì lý do nào đó, phải có biện pháp xử lý để nó không tiếp tục di chuyển phá vở kết cấu gây tai nạn. Để dừng chính xác buồng thang, cần tính đến nửa hiệu số của hai quãng đường trượt khi phanh buồng thang đầy tải và phanh buồng thang không tải theo cùng một hướng di chuyển.
Các yếu tố ảnh hưởng đến dừng chính các buồng thang bao gồm: moment của cơ cấu phanh, moment quán tính của buồng thang, tốc độ khi bắt đầu hãm và một số yếu tố khác.
Để khắc phục những nhược điểm của bộ điều khiển dùng dây nối ( bộ điều khiển bằng Relay) người ta đã chế tạo ra bộ PLC nhằm thỏa mãn các yêu cầu sau : - Lập trình dể dàng, ngôn ngữ lập trình dể học. Các thiết kế đầu tiên là nhằm thay thế cho các phần cứng Relay dây nối và các Logic thời gian .Tuy nhiên ,bên cạnh đó việc đòi hỏi tăng cường dung lượng nhớ và tính dể dàng cho PLC mà vẫn bảo đảm tốc độ xử lý cũng như giá cả … Chính điều này đã gây ra sự quan tâm sâu sắc đến việc sử dụng PLC trong công nghiệp. Các tập lệnh nhanh chóng đi từ các lệnh logic đơn giản đến các lệnh đếm , định thời , thanh ghi dịch … sau đó là các chức năng làm toán trên các máy lớn … Sự phát triển các máy tính dẫn đến các bộ PLC có dung lượng lớn , số lượng I / O nhiều hơn.
Mỗi đơn vị I / O có duy nhất một địa chỉ, các hiển thị trạng thái của các kênh I / O được cung cấp bỡi các đèn LED trên PLC , điều này làm cho việc kiểm tra hoạt động nhập xuất trở nên dể dàng và đơn giản.
- Toàn bộ vùng nhớ không bị mất dữ liệu trong khoảng 190 giờ khi PLC bị mất nguồn nuôi.
-Vùng đối tượng: Timer, bộ đếm, bộ đếm tốc độ cao và các cổng vào/ra tương tự được đặt trong vùng nhớ cuối cùng. Nó có thể truy nhập theo từng bit, từng byte, từng từ đơn (word) hoặc theo từng từ kép và được sử dụng làm miền lưu trữ dư liệu cho các thuật toán, các hàm truyền thông, lập bảng, các hàm dịch chuyển, xoay vòng thanh ghi, con trỏ địa chỉ… Ghi các dữ liệu kiểu bảng bị hạn chế rất nhiều vì dữ liệu kiểu bảng thường chỉ được sử dụng theo những mục đích nhất định. Vùng dữ liệu lại được chia ra thành những miền nhớ nhỏ với các công dụng khác nhau.
Tất cả miền này đều có thể truy nhập được theo từmg bit, từng byte, từng từ đơn (word – 2byte) hoặc từ kép (2 word).
Như vậy tại mỗi thời điểm thực hiện lệnh vào/ra,thông thường không làm việc trực tiếp với cổng vào ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số. Không gặp lệnh vào/ra ngay lặp tức thì hệ thống sẽ cho dừng mọi công việc khác, ngay cả chương trình xử lý ngắt, để thực hiện lệnh này một cách trực tiếp với cổng vào/ra. Nếu sử dụng các chế độ ngắt, chương trình con tương ứng với từng tín hiệu ngắt được soạn thảo và cài đặt như nmột bộ phận của chương trình.
Chương trình xử lý ngắt chỉ được thực hiện trong vòng quét khi xuất hiện tín hiệu báo ngắt và có thể xảy ra ở bất cứ điểm nào trong vòng quét.
_Thiết lập lệnh :các lệnh logic bit ,các lệnh so sánh ,các bộ thời gian ,các bộ đếm ,các đồng hồ ,toán học điểm cố định ,toán học điểm trôi ,các lệnh số học ,các lệnh dịch chuyển ,các lệnh tạo bảng ,các lệnh logic bit ,các lệnh dịch chuyển ,xoay ,các lệch chuyển đổi ,các lệnh điều khiển chương trình ,các lệnh ngắt và truyền thông ,các lệnh làm việc với nhăn xếp. Ngoài những lệnh làm việc trực tiếp với tiếp điểm, S7-200 còn có 5 lệnh đặc biệt biểu diễn các phép tính của đại số Boolean cho các bit trong ngăn xếp, được gọi là các lệnh stack logic. Có thể dùng các lệnh tiếp điểm đặc biệt để phát hiện sự chuyển tiếp trạng thái của xung (sườn xung) và đảo lại trạng thái của dòng cung cấp (giá trị của đỉnh ngăn xếp).
Chúng cho phép chuyển thứ tự thực hiện, đáng lẽ ra là lệnh tiếp theo, tới một lệnh bất cứ nào khác của chương trình, trong đó nơi điều khiển chuyển đến phải được đánh dấu trước bằng một nhãn, chỉ, đích. Thuộc nhóm lệnh điều khiển chương trình gồm: lệnh nhảy, lệnh gọi chương trình con, nhãn chỉ đích, hay gọi đơn giản là nhãn, phải được đánh dấu trước khi thực hiện lệnh nhảy hay lệnh gọi chương trình con. Khi chương trình con thực hiện xong các phép tính của mình thì việc điều khiển lại được chuyển trở về lệnh tiếp theo trong chương trình chính nằm ngay sau lệnh gọi chương trình con.
Khi một chương trình con được gọi, toàn bộ nội dung của ngăn xếp sẽ được cất đi, đỉnh của ngăn xếp nhận giá trị logic mới là 1, các bít khác của ngăn xếp nhận giá trị logic 0 và điều khiển được chuyển đến chương trình con đã được gọi. Khi thực hiện xong chương trình con và trước khi điều khiển được chuyển trở lại chương trình đã gọi nó, nội dung ngăn xếp đã được cất giữ trước đó sẽ được chuyển trở lại ngăn xếp. Nội dung của thanh ghi AC không được cất giữ khi gọi chương trình con, nhưng khi một chương trình xử lý ngắt được gọi, nội dung của thanh ghi AC sẽ được cất giữ trước khi thực hiện chương trình xử lý ngắt và nạp lại khi chương trình xử lý ngắt đã được thực hiện xong.
Hai kiểu Timer của S7-200 (TON và TONR) phân biệt với nhau ở phản ứng của nó đối với trạng thái tín hiệu đầu vào, tức là khi tín hiệu đầu vào chuyển trạng thái logic từ 0 lên 1, được gọi là thời điểm Timer được kích, và không tính khoảng thời gian khi đầu vào có giá trị logic 0 vào thời gian trễ tín hiệu được đặt trước. Trong khoảng thời gian tín hiệu x (t) có giá trị logic 1, giá trị đếm tức thời trong T-word luôn được cập nhật và thay đổi tăng dần cho đến khi nó đạt giá trị cực đại. Khi giá trị đếm tức thời bằng hoặc lớn hơn giá trị đặt trước này thì bộ đếm báo ra ngoài bằng cách đặt giá trị logic 1 vào một bít đặc biệt của nó, được gọi là C-bít.
Khác với các bộ Counter, các bộ đếm CTU đều có chân nối với tín hiệu điều khiển xóa để thực hiện việc đặt lại chế độ khởi phát ban đầu (reset) cho bộ đếm, được ký hiệu bằng chữ cái R trong LAD hay được qui định là trạng thái logic của bít đầu tiên của ngăn xếp trong STL.
Đặc tính setting đặt và trả lại các thông số truyền thông cho cổng RS-232, như tốc độ baud, tính chẳng lẽ, số bit dữ liệu va số bit dừng. (Nếu Paramstring$ không hợp lệ (valid) thì khi mở cổng, điều khiển truyền thông sẽ phát sinh lỗi 280 (lỗi giá trị thuộc tính không hợp lệ). Trong khi thiết kế (design time ) ta có thể đặt portnumber % bằng một giá trị nằm trong khoảng từ 1 đến 16 (giá trị mặc định là 1)trước khi dùng lệnh Portopen phải thiết lập cổng bằng CommPort thì điều khiển truyền thông sinh ra lỗi 68(cổng không tồn tại).
Đặc tính PortOpen đặt và trả lại trạng thái của cổng truyền thông (đóng hoặc mở).Đặc tính này không có trong thời gian thiết kế chương trình. Phải đặt thông số cổng bằng đặt tính CommPortvới một giá trị hợp lệ, nếu ta quên đi đặc tính này lỗi 68 sẽ phát sinh. Nếu đặt tính này được set là comminputmodetext thì đặc tính Input sẽ trả về dữ liệu kiểu Text vào một biến Variant.
Nếu Input mode là Comm InputmodeBinary thì Input sẽ trả về dữ liệu nhị phân trong mảng các byte vào một biến Variant. Kích thước của bộ đệm phải đặt sao cho nó có thể cất giữ được số lớn nhất của các ký tự sẽ được nhận trước khi chương trình ứng dụng có thể đọc chúng từ bộ đệm, trừ khi ta làm việc ở chế độ bắt tay (handshaking). Đặc tính Output sẽ viết một chuỗi ký tự vào bộ đệm truyền ,đặt tính này khong có trong thời gian thiết kế chương trình.
Để gửi dữ liệu text, ta phải khai báo một biến Variant và cho chứa chuỗi muốn gửi gán biến này cho một đặc tính Output. Nếu ta có dữ liệu mà chứa các ký tự điều khiển đượ nhúng (embedded) như các kýtự NULL,…thì ta sẽ truyền dữ liệu theo dạng binary.
'If MSComm1.InBufferCount >= 1 Then MSComm1.InputLen = 0 'neu co ky tu trong bo dem nhan thi doc het.