Nắm được tầm quan trọng đó, em làm đề tài: ĐIỀU KHIỂN VÀ GIÁM SÁT BÃI GIỮ XE TỰ ĐỘNG QUA ETHERNET để làm luận văn tốt nghiệp cho mình, vừa để tạo ra 1 sản phẩm có khả năng ứng dụng tr
Trang 1LỜI NÓI ĐẦU
Ngày nay phương tiện đi lại là ôtô được sử dụng khá phổ biến, chính vì vậy việc xây dựng bãi giữ xe là cần thiết, nhất là ở các khu đô thị lớn như thành phố Hồ Chí Minh, thủ đô Hà Nội Nhưng với diện tích đất ngày càng bị thu hẹp thì việc xây dựng các bãi giữ xe có diện tích lớn là việc gây khó giải quyết Chính vì vậy, với sự phát triển của công nghệ hiện đại thì việc khó khăn đó được giải quyết dễ dàng Đó là việc xây dựng các bãi giữ xe theo dạng tầng (hay còn gọi là dạng chung cư ), một việc làm hoàn toàn có thể, phù hợp với sự phát triển của đô thị hiện đại, giúp giảm được diện tích xây dựng
Cùng với sự phát triển mạnh mẽ không ngừng của các ngành kỹ thuật Chúng đã đi sâu vào mọi mặc đời sống hàng ngày của người dân Đặc biệt là sử dụng PLC để điều khiển các thiết bị công nghiệp Nắm
được tầm quan trọng đó, em làm đề tài: ĐIỀU KHIỂN VÀ GIÁM SÁT
BÃI GIỮ XE TỰ ĐỘNG QUA ETHERNET để làm luận văn tốt nghiệp
cho mình, vừa để tạo ra 1 sản phẩm có khả năng ứng dụng trong thực tế
Những kiến thức và năng lực đạt được trong quá trình học tập tại trường sẽ được đánh giá qua đợt bảo vệ luận văn tốt nghiệp Vì vậy em đã
cố gắng tận dụng tất cả những kiến thức đã học ở trường cùng với sự tìm tòi nghiên cứu, để có thể hoàn thành tốt đồ án tốt nghiệp này
Trang 2ý kiến đóng góp tận tình của quý thầy cô và các bạn
Em xin chân thành cảm ơn thầy Ths Nguyễn Đức Toàn đã đưa ra một đề tài hay, thực tế giúp em tiếp cận với thực tế công việc ở bên ngoài
từ đó tự tin hơn khi bước ra trường Đặc biệt thầy đã tận tình hướng dẫn, gợi ý phát triển luận văn thực tế hơn, hỗ trợ tài liệu,… trong suốt quá trình làm khóa luận này Em xin chân thành cảm ơn thầy
Qua đây em cũng xin gửi lời cảm ơn đến anh Nguyễn Văn Huyên
đã tận tình hướng dẫn trong khâu lập trình PLC, cũng như là trang thiết
bị để em hoàn thành luận văn này Và rất nhiều thành viên của diễn đàn PLC Việt Nam và diễn đàn Kỹ Thuật Việt
Sinh viên thực hiện NGUYỄN VĂN PHÚ
Trang 3MỤC LỤC
Đề mục Trang
LỜI NÓI ĐẦU i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC HÌNH VẼ vii
DANH MỤC BẢNG xii
CHƯƠNG 1: ĐẶT VẤN ĐỀ 1
1.1 SỰ CẦN THIẾT CỦA ĐỀ TÀI 1
1.2 GIỚI HẠN ĐỀ TÀI 1
1.3 MỤC ĐÍCH NGHIÊN CỨU 2
CHƯƠNG 2: HỆ THỐNG BÃI GIỮ XE TỰ ĐỘNG 3
2.1 TÌM HIỂU BÃI GIỮ XE 3
2.2.THIẾT KẾ BÃI GIỮ XE TỰ ĐỘNG 3
CHƯƠNG 3: GIỚI THIỆU PLC S7-1200 6
3.1 GIỚI THIỆU CHUNG VỀ S7-1200 6
3.1.1 Khái niệm chung PLC S7-1200 6
3.1.2 Các module trong hệ PLC S7-1200 6
3.1.2.1 Giới thiệu về các module CPU 6
3.1.2.2 Sign board của PLC SIMATIC S7-1200 7
3.1.2.3 Module xuất nhập tín hiệu số 8
3.1.2.4 Module xuất nhập tín hiệu tương tự 8
Trang 43.2 LÀM VIỆC VỚI PHẦN MỀM TIA PORTAL 9
3.2.1 Giới thiệu SIMATIC STEP 7 Basic – tích hợp lập trình PLC và HMI 9
3.2.2 TAG của PLC / TAG local 9
3.3 KỸ THUẬT LẬP TRÌNH 12
3.3.1 Vòng quét chương trình 12
3.3.2 Cấu trúc lập trình 12
3.3.2.1 Khối tổ chức OB – OGANIZATION BLOCKS 13
3.3.2.2 Hàm chức năng – FUNCTION 14
3.4 GIỚI THIỆU CÁC TẬP LỆNH 15
3.4.1 Bit logic (tập lệnh tiếp điểm) 15
3.4.2 Sử dụng bộ Timer 18
3.4.3 Sử dụng bộ Counter 19
3.4.4 So sánh 20
3.4.5 Toán học 20
3.4.6 Di chuyển (MOVE) 22
CHƯƠNG 4: ỨNG DỤNG WEBSERVER VỚI PLC S7-1200 24
4.1.GIỚI THIỆU VỀ ỨNG DỤNG WEBSERVER VỚI PLC S7-1200 24
4.2 STANDARD WEB PAGES 26
4.3 USER-DEFINED WEB PAGES 33
4.3.1 Các bước căn bản để tạo 1 trang User-defined Web 34
4.3.2 Những đặc điểm chính của trang User-defined web 39
Trang 55.1 GIỚI THIỆU 45
5.2 CÁC LOẠI MÃ VẠCH 46
5.3 ỨNG DỤNG CÁC LOẠI MÃ VẠCH 46
5.4 ĐẦU ĐỌC MÃ VẠCH: MÁY QUÉT MÃ VẠCH CD 100-BU 47
CHƯƠNG 6: PC ACCESS 49
6.1 ỨNG DỤNG TRONG THỰC TẾ 49
6.2 GIAO DIỆN VÀ CÁCH KẾT NỐI 49
CHƯƠNG 7: GIỚI THIỆU CHUNG VỀ WINCC V7.0 SP3 52
7.1 ĐẶC TRƯNG CƠ BẢN CỦA WINCC 52
7.2 ĐẶC TRƯNG CƠ BẢN CỦA WINCC 52
7.3.TỔNG QUAN VỀ LẬP TRÌNH WINCC CHỨC NĂNG CỦA TRUNG TÂM ĐIỀU KHIỂN(CONTROL CENTER) 53
7.3.1 Chức năng 53
7.3.2 Cấu trúc 54
CHƯƠNG 8: LƯU ĐỒ GIẢI THUẬT 57
8.1 LƯU ĐỒ GIẢI THUẬT CHÍNH 57
8.2 LƯU ĐỒ XÁC ĐỊNH TỌA ĐỘ 61
8.3 LƯU ĐỒ CẤT XE 62
8.4 LƯU ĐỒ LẤY XE 64
CHƯƠNG 9: THI CÔNG 66
9.1 TẠO PROJECT TRONG TIA V11 66
9.1.1 Kết nối qua giao thức TCP/IP 66
Trang 69.1.2 Tạo một Project trong TIA Portal 66
9.1.3 LÀM VIỆC VỚI MỘT TRẠM PLC 69
9.1.3.1 Quy định địa chỉ IP cho module CPU 69
9.1.3.2 Đổ chương trình xuống CPU 69
9.1.3.3 Giám sát và thực hiện chương trình 71
9.2 TẠO PROJECT TRONG WINCC 72
9.2.1 Tạo Project và kết nối các Tag với PC Access 72
9.2.2 Cách tạo giao diện của bãi giữ xe 76
9.2.3 Một số thao tác để tạo các chi tiết trong những giao diện còn lại 79
9.2.4 Tạo User và phân quyền người sử dụng 84
9.2.5 Tạo report thông qua Excel 90
9.3 TẠO WEB SERVER 91
9.3.1 Những tính năng chính của file HTML 91
9.3.2 Hướng dẫn sử dụng ứng dụng 99
CHƯƠNG 10: TỔNG KẾT 105
10.1 NHỮNG VIỆC ĐÃ LÀ ĐƯỢC 105
10.2 CÁCH KHẮC PHỤC VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 105
TÀI LIỆU THAM KHẢO 107
Trang 7DANH MỤC HÌNH VẼ
Hình 2.1: Mô hình bài giữ xe 3
Hình 2.2: Cảm biến từ 4
Hình 2.3: Tính toán buồng nâng xe 4
Hình 3.1: Thông số module CPU S7-1200 7
Hình 3.2: Thông số Sign board 8
Hình 3.3: Thông số module mở rộng ngõ vào và ngõ ra 8
Hình 3.4: Thông số module analog 9
Hình 3.6: PLC Tags trong TIA PORTAL 10
Hình 3.7: PLC Table trong TIA PORTAL 11
Hình 3.8: Tìm và thay thế Tag PLC 11
Hình 3.9: Cấu trúc lập trình 13
Hình 4.1: Cơ chế truy cập Web Server qua Internet 24
Hình 4.2: Cấu trúc một Web Server 25
Hình 4.3: Trang giới thiệu SIMATIC S7-1200 27
Hình 4.4: Trang khởi đầu 27
Hình 4.5: Thông số PLC 28
Hình 4.6: Thông tin làm việc của PLC 29
Hình 4.7: Thông tin module PLC 30
Hình 4.8: Thông số truyền thông của PLC 30
Hình 4.9: Thống kê dữ liệu truyền thông của PLC 31
Trang 8Hình 4.10: Trang thái của biến 32
Hình 4.11: Lưu trữ dữ liệu trên Web 32
Hình 4.12: Mô hình đọc và gửi dữ liệu qua Web Server 34
Hình 5.1: Cấu trúc mã vạch 46
Hình 5.2: Máy quét mã vạch CD 100-BU 47
Hình 6.1: Ứng dụng PC Access 49
Hình 6.2: Tạo giao diện PC Access 49
Hình 6.3: PG/PC Interface 1 50
Hình 6.4: Cài đặt cấu hình kết nối 50
Hình 6.5: Bảng Tags trong PC Access 51
Hình 8.1: Lưu đồ chính 57
Hình 8.2: Lưu đồ quét mã vạch cất và lấy xe 58
Hình 8.3: Lưu đồ phát hiện xe vào trái 59
Hình 8.4: Lưu đồ phát hiện xe vào phải 60
Hình 8.5: Lưu đồ xác định tọa độ 61
Hình 8.6: Lưu đồ cất xe trái 62
Hình 8.7: Lưu đồ cất xe phải 63
Hình 8.8: Lưu đồ lấy xe trái 64
Hình 8.9: Lưu đồ lấy xe phải 65
Hình 9.1: Kết nối PLC qua TCP/IP 66
Hình 9.2: Biểu tượng TIA PORTAL V11 66
Hình 9.3: Tạo dự án mới 67
Trang 9Hình 9.4: Đặt tên dự án 67
Hình 9.5: Chọn cấu hình cho dự án 67
Hình 9.6: Thêm thiết bị mới cho dự án 68
Hình 9.7: Chọn PLC tương ứng 68
Hình 9.8: Đổ chương trình PLC 69
Hình 9.9: Kiểm tra kết nối PLC với thiết bị tải về 70
Hình 9.10: Kết quả sau khi tải chương trình 70
Hình 9.11: Chương trình chính (OB1) 71
Hình 9.12: Kết nối PLC và máy tính 71
Hình 9.13: Chạy trực quan PLC trên giao diện 71
Hình 9.14: Tạo dự án trong WinCC V7.0 72
Hình 9.15: Thêm thiết bị mới trong WinCC 72
Hình 9.16: Chọn kiểu kết nối OPC cho WinCC 73
Hình 9.17: Thông số hệ thống 73
Hình 9.18: Chọn kết nối PC Access trong WinCC 74
Hình 9.19: Lọc các biến vào trong WinCC 74
Hình 9.20: Thêm biến cho WinCC 75
Hình 9.21: Tạo kết nối mới trong WinCC 75
Hình 9.22: Thêm biến 75
Hình 9.23: Các biến trong WinCC 76
Hình 9.24: Các đối tượng trong WinCC 1 77
Hình 9.25: Độ bóng của hình ảnh trong WinCC 77
Trang 10Hình 9.26: Phong nền của giao diện chính 78
Hình 9.27: Thuộc tính INFORMATION CAR PARK 78
Hình 9.28: I/O field and Static Text 79
Hình 9.29: Nhập mã vạch 80
Hình 9.30: Hộp thoại cấu hình 80
Hình 9.31: Chon Tag cho I/O field nhập mã vạch 81
Hình 9.32: Cấu hình ngõ ra của Mã Vạch 81
Hình 9.32: Giao diện buồng chuyển xe 82
Hình 9.33: Giao diện INFORMATION CAR PARK 82
Hình 9.34: Giao diện INTERFACE 1 83
Hình 9.35: Giao diện INTERFACE 2 83
Hình 9.36: Giao diện INTERFACE 3 84
Hình 9.37: Giao diện phân quyền chính 85
Hình 9.38: Thay đổi mật khẩu của Admin 86
Hình 9.39: Tao nhóm người dùng 87
Hình 9.40: Nhóm vận hành 87
Hình 9.41: Tạo người vận hành 88
Hình 9.42: Đặt mật khẩu cho người vận hành 88
Hình 9.43: Người vận hành 88
Hình 9.44: Thêm quyền 89
Hình 9.45: Thêm dòng phân quyền 89
Hình 9.46: Phân quyền cho Admin 89
Trang 11Hình 9.47: Phân quyền cho người vận hành 89
Hình 9.48: Phân quyền từng mục 90
Hình 9.49: Giao diện Report Excel 90
Hình 9.50: Trang web người dùng 100
Hình 9.51: Đăng nhập Web Server 1 101
Hình 9.52: Đăng nhập Web Server 2 101
Hình 9.53: Giao diện Web Server Plant Status 102
Hình 9.54: Giao diện Web Server Overview Car Park 103
Hình 9.55: Giao diện Web Server Data 104
Hình 9.56: Giao diện Web Server Check Monthly Car 104
Trang 12DANH MỤC BẢNG
Bảng 4.1: Các lệnh căn bản trong HTML 35
Bảng 4.2: Ứng dụng định dạng trong HTML 36
Bảng 4.3: Thời gian truyền nhận của các biến trong Web Server 38
Bảng 4.4: Cấu trúc lệnh WWW 41
Bảng 4.5: Thông số của ngõ ra RET_VAL của lệnh WWW 42
Bảng 5.1: Thông số máy quét mã vạch CD 100-BU 48
Bảng 9.1: Giải thích các lệnh trong tiêu đề Web 93
Bảng 9.2: Giải thích các lệnh định dạng trong Web 96
Bảng 9.3: Giải thích lệnh tạo hình ảnh trên Web 96
Bảng 9.4: Giải thích lệnh đƣa dữ liệu lên Web 98
Bảng 9.5: Giải thích tạo nút nhấn trên Web 99
Trang 13CHƯƠNG 1: ĐẶT VẤN ĐỀ 1.1 SỰ CẦN THIẾT CỦA ĐỀ TÀI
Ngày nay ở các trung tâm thành phố lớn với sự phát triển mật độ dân cư và xe
cộ ngày càng đông đúc Đặc biệt là sự gia tăng về số lượng xe ôtô ngày càng nhiều
và điều này phần nào cũng phản ánh sự phát triển của một quốc gia Theo thống kê của Sở Giao thông vận tải TP Hồ Chí Minh, thành phố có gần 500 nghìn xe ô tô( chiếm 1/3 số ô tô cả nước) Lượng phương tiện năm năm gần đây tăng hơn 10% mỗi năm Do đó, người ta đặt vấn đề là xây dựng những bãi giữ xe để phục vụ cho người dân trong công việc cũng như trong việc đi lại của họ Các nước tiên tiến trên thế giới như Nhật Bản, Hàn Quốc,… ở những thành phố chật hẹp, người ta xây dựng hệ thống bãi giữ xe ôtô tự động được trang bị thiết bị nâng để di chuyển ôtô từ mặt đất lên điểm đỗ trên cao
Song song đó, với sự trợ giúp của công nghệ hiện đại, việc thi công, điều khiển và giám sát các bãi giữ xe tự động được thực hiện khá dễ dàng Người giám sát có thể không trực tiếp tại bãi giữ xe, mà có thể đi bất kì đâu, chỉ cần có Internet thì người giám sát có thể dễ dàng giám sát bãi giữ xe tự động của mình trực tiếp
trên Web thông qua ứng dụng Web Server được tích hợp trên PLC S&-1200
1.2 GIỚI HẠN ĐỀ TÀI
Với thời gian hơn 2 tháng thực hiện đề tài cũng như trình độ chuyên môn có hạn, em đã cố gắng hết sức để hoàn thành luận văn này nhưng chỉ giải quyết được những vấn đề sau:
Xây dựng mô hình giữ xe theo tầng( dạng chung cư) với 16 chỗ giữ xe ô tô
Xây dựng giám sát và điều khiển trực tiếp qua HMI dựa vào phần mềm WINCC
Phân quyền người điều hành trên giao diện HMI
Lưu trữ thông tin thông tin bãi giữ xe trên Excel
Trang 14 Giám sát từ xa qua Web server
Tập tính làm việc độc lập, khả năng tự suy nghĩ tìm tòi, học hỏi, phát huy năng lực của bản thân
Ngoài ra còn tạo đƣợc 1 sản phẩm có tính ứng dụng trong thực tế
Trang 15CHƯƠNG 2: HỆ THỐNG BÃI GIỮ XE TỰ ĐỘNG 2.1 TÌM HIỂU BÃI GIỮ XE
Thiết kế nhà giữ xe hoàn toà tự động với sức chứa 16 chỗ để xe , xe vào bãi
và ra khỏi bãi theo một chiều với 2 cổng vào và 2 cổng ra riêng biệt Nhà giữ xe hoàn toàn tự động, sử dụng công nghệ tự động tiên tiến PLC S7-1200 điều khiển, kết hợp với quét mã vạch tăng tính an toàn cho khách hàng Bãi giữ xe hầu như không cần nhân viên giám sát, khách hàng sẽ tự cất xe và tự lấy xe bằng việc quét
mã vạch => nhấn nút lấy xe hay cất xe tùy theo mục đích, sau đó quy trình cất xe, lấy xe sẽ hoàn toàn thực hiện tự động
Nhà giữ xe có kết cấu đơn giản nên dễ dàng mở rộng, tăng số lượng xe Thẻ mã vạch được cấp cho người giữ theo hai hình thức: gửi xe tuỳ ý theo ngày và theo tháng
Với ý tưởng như trên, nhóm đã quyết định thiết kế hệ thống giữ xe ở dạng mô hình như bên dưới
Hình 2.1: Mô hình bài giữ xe
2.2.THIẾT KẾ BÃI GIỮ XE TỰ ĐỘNG
Trang 16Bãi giữ xe được thiết kế theo dạng chung cư với 16 ô( 8 ô trái và 8 ô phải) Với tổng cộng 6 động cơ DC ( 12VDC và 24VDC), 7 công tắc hành trình, 6 cảm biển từ Kích thước thiết kế đã được thể hiện trên hình trên
Hoạt động như buồng thang máy
Hình 2.3: Tính toán buồng nâng xe
Trang 17Theo như phân tích lực ở trong hình trên thì:
hệ số cân bằng tải của đối trọng
Thông thường người ta thường lấy hệ số cân bằng
( )( )
( )
Trang 18CHƯƠNG 3: GIỚI THIỆU PLC S7-1200 3.1 GIỚI THIỆU CHUNG VỀ S7-1200
3.1.1 Khái niệm chung PLC S7-1200
Năm 2009, Siemens ra dòng sản phẩm S7-1200 dùng để thay thế dần cho S7-200 So với S7-200 thì S7-1200 có những tính năng nổi trội hơn
S7-1200 là một dòng của bộ điều khiển logic lập trình (PLC) có thể kiểm soát nhiều ứng dụng tự động hoá Thiết kế nhỏ gọn, chi phí thấp, và một tập lệnh mạnh làm cho chúng ta có những giải pháp hoàn hảo hơn cho ứng dụng sử dụng với S7-
Phần mềm dùng để lập trình cho S7-1200 là Step7 Basic Step7 Basic hỗ trợ
ba ngôn ngữ lập trình là FBD, LAD và SCL Phần mềm này được tích hợp trong TIA Portal 11 của Siemens
Vậy để làm một dự án với S7-1200 chỉ cần cài TIA Portal vì phần mềm này
đã bao gồm cả môi trường lập trình cho PLC và thiết kế giao diện HMI
3.1.2 Các module trong hệ PLC S7-1200
Trang 19Các module CPU khác nhau có hình dạng, chức năng, tốc độ xử lý lệnh, bộ nhớ chương trình khác nhau…
PLC S7-1200 có các loại sau:
Hình 3.1: Thông số module CPU S7-1200
3.1.2.2 Sign board của PLC SIMATIC S7-1200
Sign board: SB1223 DC/DC
Trang 20-Digital inputs / outputs
Hình 3.2: Thông số Sign board
3.1.2.3 Module xuất nhập tín hiệu số
Hình 3.3: Thông số module mở rộng ngõ vào và ngõ ra
3.1.2.4 Module xuất nhập tín hiệu tương tự
Trang 21Hình 3.4: Thông số module analog
3.1.2.5 Module truyền thông
Hình 3.5: Thông số module truyền thông
3.2 LÀM VIỆC VỚI PHẦN MỀM TIA PORTAL
3.2.1 Giới thiệu SIMATIC STEP 7 Basic – tích hợp lập trình PLC và HMI
Step 7 basic hệ thống kỹ thuật đồng bộ đảm bảo hoạt động liên tục hoàn hảo Một hệ thống kỹ thuật mới
Thông minh và trực quan cấu hình phần cứng kỹ thuật và cấu hình mạng, lập trình, chẩn đoán và nhiều hơn nữa
Lợi ích với người dùng:
-Trực quan : dễ dàng để tìm hiểu và dễ dàng để hoạt động
-Hiệu quả : tốc độ về kỹ thuật
-Chức năng bảo vệ : Kiến trúc phần mềm tạo thành một cơ sở ổn định cho sự đổi mới trong tương lai
3.2.2 TAG của PLC / TAG local
Tag của PLC
Phạm vi ứng dụng : giá trị Tag có thể được sử dụng mọi khối chức năng trong PLC
Trang 22Ứng dụng : binary I/O, Bits of memory
Định nghĩa vùng : Bảng tag của PLC
Miêu tả : Tag PLC được đại diện bằng dấu ngoặc kép
Tag Local
Phạm vi ứng dụng : giá trị chỉ được ứng dụng trong khối được khai báo, mô
tả tương tự có thể được sử dụng trong các khối khác nhau cho các mục đích khác nhau
Ứng dụng : tham số của khối, dữ liệu static của khối, dữ liệu tạm thời
Định nghĩa vùng : khối giao diện
Miêu tả : Tag được đại diện bằng dấu #
Sử dụng Tag trong hoạt động
Hình 3.6: PLC Tags trong TIA PORTAL Layout : bảng tag PLC chứa các định nghĩa của các Tag và các hằng số có giá trị trong CPU Một bảng tag của PLC được tự động tạo ra cho mỗi CPU được
sử dụng trong project
Colum : mô tả biểu tượng có thể nhấp vào để di chuyển vào hệ thống hoặc
có thể kéo nhả như một lệnh chương trình
Name : chỉ được khai báo và sử dụng một lần trên CPU
Data type : kiểu dữ liệu chỉ định cho các tag
Address : địa chỉ của tag
Trang 23Retain : khai báo của tag sẽ được lưu trữ lại
Comment : comment miêu tả của tag
Nhóm tag : tạo nhóm tag bằng cách chọn add new tag table
Hình 3.7: PLC Table trong TIA PORTAL Tìm và thay thế tag PLC
Hình 3.8: Tìm và thay thế Tag PLC Ngoài ra còn có một số chức năng sau:
- Lỗi tag
- Giám sát tag của plc
- Hiện / ẩn biểu tượng
Trang 24- Đổi tên tag : Rename tag
- Đổi tên địa chỉ tag : Rewire tag
- Copy tag từ thư viện Global
Sau giai đoạn thực hiện chương trình là giai đoạn chuyển các nội dung của bọ đệm ảo Q tới các cổng ra số Vòng quét kết thúc bằng giai đoạn truyền thông nội
bộ và kiểm tra lỗi
Chú ý rằng bộ đệm I và Q không liên quan tới các cổng vào / ra tương tự nên các lệnh truy nhập cổng tương tự được thực hiện trực tiếp với cổng vật lý chứ không thông qua bộ đệm
3.3.2 Cấu trúc lập trình
Trang 25Hình 3.9: Cấu trúc lập trình
3.3.2.1 Khối tổ chức OB – OGANIZATION BLOCKS
-Organization blocks (OBs) : là giao diện giữa hoạt động hệ thống và chương trình người dùng Chúng được gọi ra bởi hệ thống hoạt động, và điều khiển theo quá trình:
+Xử lý chương trình theo quá trình
+Báo động – kiểm soát xử lý chương trình
+Xử lý lỗi
-Startup OB, Cycle OB, Timing Error OB và Diagnosis OB : có thể chèn và lập trình các khối này trong các project Không cần phải gán các thông số cho chúng và cũng không cần gọi chúng trong chương trình chính
-Process Alarm OB và Time Interrupt OB : Các khối OB này phải được tham
số hoá khi đưa vào chương trình Ngoài ra, quá trình báo động OB có thể được gán
Trang 26cho một sự kiện tại thời gian thực hiện bằng cách sử dụng các lệnh ATTACH, hoặc tách biệt với lệnh DETACH
-Time Delay Interrupt OB : OB ngắt thời gian trễ có thể được đưa vào dự án
và lập trình Ngoài ra, chúng phải được gọi trong chương trình với lệnh
SRT_DINT, tham số là không cần thiết
-Start Information : Khi một số OB được bắt đầu, hệ điều hành đọc ra thông tin được thẩm định trong chương trình người dùng, điều này rất hữu ích cho việc chẩn đoán lỗi, cho dù thông tin được đọc ra được cung cấp trong các mô tả của các khối OB
+Trả lại giá trị cho hàm chức năng được gọi
+Thực hiện công nghệ chức năng, ví dụ : điều khiển riêng với các hoạt động nhị phân
+Ngoài ra, FC có thể được gọi nhiều lần tại các thời điểm khác nhau trong một chương trình Điều này tạo điều kiện cho lập trình chức năng lập đi lặp lại phức tạp
-FB (function block) : đối với mỗi lần gọi, FB cần một khu vực nhớ Khi một
FB được gọi, một Data Block (DB) được gán với instance DB Dữ liệu trong
Instance DB sau đó truy cập vào các biến của FB Các khu vực bộ nhớ khác nhau
đã được gán cho một FB nếu nó được gọi ra nhiều lần
-DB (data block) : DB thường để cung cấp bộ nhớ cho các biến dữ liệu Có hai loại của khối dữ liệu DB : Global DBs nơi mà tất cả các OB, FB và FC có thể
Trang 27đọc được dữ liệu lưu trữ, hoặc có thể tự mình ghi dữ liệu vào DB, và instance DB được gán cho một FB nhất định
Giá trị của bit có địa chỉ là n sẽ bằng
1 khi đầu vào của lệnh này bằng 1 và ngược lại
Toán hạng n : Q, M, L, D Chỉ sử dụng một lệnh out cho 1 địa chỉ
4)Lệnh OUT đảo
L
A
D
Giá trị của bit có địa chỉ là n sẽ bằng
1 khi đầu vào của lệnh này bằng 0 và ngược lại
Toán hạng n : Q, M, L, D Chỉ sử dụng một lệnh out not cho 1 địa chỉ
Trang 28Giá trị của các bit có địa chỉ đầu tiên
là OUT sẽ bằng 1 khi đầu vào của lệnh này bằng 1 Khi đầu vào của lệnh bằng 0 thì các bit này vẫn giữ nguyên trạng thái Trong đó
số bit là giá trị của n
Toán hạng OUT: Q, M, L, D
n : là hằng số
Lệnh reset nhiều bit
Trang 29L
A
D
Giá trị của các bit có địa chỉ đầu tiên
là OUT sẽ bằng 0 khi đầu vào của lệnh này bằng 1 Khi đầu vào của lệnh bằng 0 thì các bit này vẫn giữ nguyên trạng thái Trong đó
số bit là giá trị của n Toán hạng OUT: Q, M, L, D
Trang 303.4.2 Sử dụng bộ Timer
Sử dụng lệnh Timer để tạo một chương trình trễ định thời Số lượng của
Timer phụ thuộc vào người sử dụng và số lượng vùng nhớ của CPU Mỗi timer sử dụng 16 byte IEC_Timer dữ liệu kiểu cấu trúc DB Step 7 tự động tạo khối DB khi lấy khối Timer
Kích thước và tầm của kiểu dữ liệu Time là 32 bit, lưu trữ như là dữ liệu Dint : T#-14d_20h_31m_23s_648ms đến T#24d_20h_31m_23s_647ms hay là -
Timer trễ không nhớ - TON
Trang 313.4.3 Sử dụng bộ Counter
Lệnh Counter được dùng để đếm các sự kiện ở ngoài hay các sự kiện quá trình
ở trong PLC Mỗi Counter sử dụng cấu trúc lưu trữ của khối dữ liệu DB để làm dữ liệu của Counter Step 7 tự động tạo khối DB khi lấy lệnh
Tầm giá trị đếm phụ thuộc vào kiểu dữ liệu mà bạn chọn lựa Nếu giá trị đếm
là một số Integer không dấu, có thể đếm xuống tới 0 hoặc đếm lên tới tầm giới hạn Nếu giá trị đếm là một số integer có dấu, có thể đếm tới giá trị âm giới hạn hoặc đếm lên tới một số dương giới hạn
Counter đếm lên - CTU
Counter đếm lên xuống – CTUD
Trang 32Lệnh so sánh dùng để so sánh hai giá trị IN1
và IN2 bao gồm IN1 = IN2, IN1 >= IN2, IN1 <= IN2, IN1 < IN2, IN1 > IN2 hoặc IN1 <> IN2
So sánh 2 kiểu dữ liệu giống nhau, nếu lệnh
so sánh thoả thì ngõ ra sẽ là mức 1 = TRUE (tác động mức cao) và ngƣợc lại
Kiểu dữ liệu so sánh là : SInt, Int, Dint, USInt, UDInt, Real, LReal, String, Char, Time, DTL,
3.4.5 Toán học
Lệnh tính toán
Trang 33Các thông số ngõ vào dùng trong khối phải chung định dạng
Tham số OUT có kiểu dữ liệu : SInt, Int, Dint, USInt, UInt, UDInt, Real, LReal
Tham số ENO = 1 nếu không có lỗi xảy
ra trong quá trình thực thi Ngƣợc lại ENO = 0 khi có lỗi, một số lỗi xảy ra khi thực hiện lệnh này :
- Kết quả toán học nằm ngoài phạm vi của kiểu
dữ liệu
- Chia cho 0 (IN2 = 0)
- Real/LReal : Nếu một trong những giá trị đầu vào là NaN sau đó đƣợc trả về NaN
- ADD Real/LReal : Nếu cả hai giá trị IN là
Trang 34INF có dấu khác nhau, đây là một khai báo không hợp lệ và đƣợc trả về NaN
- SUB Real/LReal : Nếu cả hai giá trị IN là INF cùng dấu, đây là một khai báo không hợp lệ và đƣợc trả về NaN
- MUL Real/LReal : Nếu một trong 2 giá trị là 0 hoặc là INF, đây là khai báo không hợp lệ và đƣợc trả về NaN
- DIV Real/LReal : Nếu cả hai giá trị IN bằng không hoặc INF, đây là khai báo không hợp lệ
- ENO = 1 : không có lỗi
- ENO = 0: kết quả nằm ngoài tầm giá trị của kiểu dữ liệu
Lệnh Move di chuyển nội dung ngõ vào
IN đến ngõ ra OUT mà không làm thay đổi giá trị ngõ IN
Trang 35Tham số:
EN : cho phép ngõ vào ENO : cho phép ngõ ra
IN : nguồn giá trị đến OUT1: Nơi chuyển đến
Lệnh Move_BLK sao chép các nội dung của một vùng nhớ IN đến một bộ nhớ xác định khác Số lượng các giá trị được sao chép được quy định trong COUNT Hoạt động sao chép theo hướng tăng dần các địa chỉ
Tham số:
EN : cho phép ngõ vào ENO : cho phép ngõ ra
IN : nguồn giá trị đến COUNT : số giá trị sao chép OUT1: Nơi chuyển đến
Trang 36CHƯƠNG 4: WEB SERVER VỚI PLC S7-1200 4.1.GIỚI THIỆU VỀ ỨNG DỤNG WEB SERVER VỚI PLC S7-1200
Công nghệ ngành tự động hiện nay phát triển mạnh bằng việc kết hợp với công nghệ Internet, các kỹ sư có thể truy cập trực tiếp tới hệ thống qua Internet Trong suốt quá trình thử nghiệm và giai đoạn vận hành, kỹ sư muốn có khả năng truy cập linh hoạt đến CPU, dữ liệu CPU có thể được hiển thị trong suốt quá trình vận hành cho mục đích chuẩn đoán lỗi
Do cơ chế truy cập qua Internet, nó thì hợp lý cho việc sử dụng những tiêu chuẩn đã có sẵn, ví dụ như trình duyệt tiêu chuẩn đã có sẵn (Standard web pages) và một số ngôn ngữ phổ biến như HTML (Hypertext Markup Language) hay JavaScript để tạo cho mình một trang web riêng để kết nối và giám sát PLC
Trang 37SIMATIC CPU với giao diện PROFINET cung cấp cơ hội để truy cập tới các biến của CPU với sự giúp đỡ của trang web đƣợc cung cấp bởi hệ thống
Việc truy cập đến máy chủ web của CPU thông qua một trình duyệt web Việc thêm vào cơ chế tiêu chuẩn của trang web nhƣ trang định nghĩa, trang chuẩn đoán trạng thái module , trang truyền thông, trang trạng thái các biến và nhật ký dữ liệu, và bạn cũng có khả năng thiết kế và gọi ra trang web cá nhân của bạn cho những ứng dụng cụ thể
Web server với trang web đƣợc tích hợp trên CPU
Để tạo ra trang cá nhân của bạn (User-defined web page), bạn có thể sử dụng các công cụ nhƣ Microsoft Frontpage, Notepad++, Để thiết kế trang web của bạn, bạn có thể sử dụng các chức năng đƣợc cung cấp với HTML, CSS và Java Script
Hình 4.2: Cấu trúc một Web Server Việc thêm vào 1 cú pháp lệnh đặc biệt (lệnh AWP) để kết nối trực tiếp với CPU Sơ đồ sau đây cho bạn cái nhìn tổng quan về giải pháp thực hiện:
Những thuận lợi và lựa chọn những ứng dụng sử dụng web server:
Trang 38+Thông qua việc truy cập các tính năng thông qua các trình duyệt web khác nhau, dữ liệu kiểm soát có thể được hiển thị và điều khiển ở một mức độ hạn chế, bởi bất kỳ máy tính hoặc một thiết bị có thể truy cập web mà không cần cài đặt thêm phần mềm
+Một ưu điểm khác là việc sử dụng toàn bộ cơ sở hạ tầng mạng của nhà máy
mà không cần thêm thiết bị phần cứng nào, ví dụ như mỗi nơi của nhà máy nơi mà có thể truy cập mạng được, thì có thể truy cập vào bộ điều khiển tương ứng
+Có thể tính toán, chuẩn đoán, hay điều khiển CPU ở một khoảng cách lớn hoặc thiết bị điện thoại di động
+Tuy nhiên, do khó khăn ở việc xác định thời gian trễ của ứng dụng web, nên việc sử dụng web server thì không phải mà một sự thay thế hoàn chỉnh cho việc vận hành và giám sát hệ thống, và không thể thay thế được cho hệ thống HMI
4.2 STANDARD WEB PAGES
Đây là trang web tiêu chuẩn do Siemens thiết kế để giám sát trạng thái CPU
Để truy cập vào trang web tiêu chuẩn của PLC S7-1200 từ máy tính, chúng ta làm theo các bước:
1 Chắc chắn rằng PLC S7-1200 và máy tính kết nối vào chung 1 mạng Ethernet hoặc chúng được kết nối trực tiếp với nhau với 1 sợi cáp mạng Ethernet
2 Mở trình duyệt Web của bằng và nhập vào địa chỉ URL như sau
“http://ww.xx.yy.zz” tương ứng với địa chỉ IP của CPU S7-1200
>>>>Trình duyệt web của bạn sẽ mở ra trang giới thiệu (Introduction page)
Introduction page:
Trang giới thiệu là màn hình chào mừng cho việc truy cập vào trang web tiêu chuẩn của PLC S7-1200
Trang 39Hình 4.3: Trang giới thiệu SIMATIC S7-1200
Start Page
Trang Start hiển thị tƣợng trƣng cho CPU mà bạn đã kết nối và thống kê các thông tin chung về CPU của bạn Nếu bạn đăng nhập vào với nick “ admin “, bạn có thể thay đổi chế độ vận hành của CPU và nhấp nháy đèn LED trên CPU (để test thử kết nối)
Hình 4.4: Trang khởi đầu
Trang 40Nút 1 và 2 chỉ hiện ra khi bạn đăng nhập vào CPU
Thời gian là thời gian trên CPU, nó phải tương ứng với Time of day và Time zone cài đặt trên cấu hình thiết bị của CPU Thời gian CPU thì không cần thiết phải giống với thời gian địa phương