Tải bản đầy đủ (.docx) (22 trang)

Tổng hợp các bài tập lập trình c++ cho wincc có lời giải minh họa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.07 MB, 22 trang )


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Đề Bài: TÌM HIỂU VỀ LẬP TRÌNH WINCC CHO HỆ THỐNG SCADA

TỔNG HỢP CÁC BÀI TẬP LẬP TRÌNH C++ CHO WINCC
Chuyên ngành: Tự Động Hoá

Mục lục :
Bài 1: Lập trình cho ô tô di chuyển theo phương x:
Bài 2: Lập trình Quay cánh quạt:
Bài 3: Hình tròn di chuyển theo phương x có thể tiến , lùi và dừng
Bài 4: Di chuyể hình tròn theo đường chéo:
Bài 5: Xuất dữ liệu ra Exel
Mọi thắc mắc xin lien hệ :
Hà Nội – 2014
Bài 1: Lập trình cho ô tô di chuyển theo phương x:
Bước 1:
- Bạn vào Interal tags tạo 1 tag mới : ví dụ tag là oto:
- Loại Binary tag
Bước 2:
Bạn vào graphics Designer tạo 1 dao diện như sau:
Bước 3:
+ Bây giờ là đến phần lập trình cho oto di chuyển
- Bạn kik chuột phải vào oto chọn properties -> mục properties -> Geometry
-> position x -> kik chuột phải mục Dynamic chọn C - Action
- Và bạn lập trình như sau:
-
-
- Mọi người để ý là : static int a=200; // vì oto chúng ta ở tọa độ thứ x=200
- if(a>=400)a=0;// Tức là oto di chuyển đến vị trí x=400


thì quay về vị trí ban đầu ( tức là vị trí thứ 200)
- Bạn có thể chọn tốc độ ở mục Event Name:
-
+ Bây giờ lập trình cho nút nhấn:
- Bạn kik chuột phải vào nút chọn properties -> mục Events -> Mouse
-> Pressleft ( chuột trái ) -> kik chuột phải mục Action chọn C- Action
-
- Và bạn lập trình như sau:
-
- Bạn nhắp theo đường link để tranh viết sai nhé:
- Nếu các bạn thích khi ấn nút thì nó đổi màu thi các bạn làm như sau:
-
- Tag ở đây là tag oto mà chung ta tạo trước đó:
-
- Mục update chọn upon change nhé:
Bước 4: Mô phỏng:
-Bạn lưu lại và ấn runtime
- Kết quả:
Bài 2: Lập trình Quay cánh quạt:
Bước 1:
- Bạn vào Interal tags tạo 1 tag mới : ví dụ tag là canhquat:
- Loại Binary tag
Bước 2:
Bạn vào graphics Designer tạo 1 dao diện như sau:
- Ban nhắp vào Polygon
-
Và vẽ cái cánh quạt như thế này cộng với nút nhấn luôn nhé:
( chú ý: Bạn vẽ thêm đường thẳng rồi chọn tất cả -> link -> group nhé:
Bước 3:
+ Bây giờ là đến phần lập trình cho cánh quạt di chuyển:

- Bạn kik chuột phải vào canh quat chọn properties -> mục properties ->
Geometry -> Rotation Angle -> kik chuột phải mục Dynamic chọn C -
Action
- Và lập trình như sau:
- Mọi người để ý là : static int a=0; // vì ở góc số 0
- if(a>=360)a=0;// Tức là 1 vong có 360 độ vậy . Nếu
bạn thich quay bao nhiêu độ thì bạn sửa lại nhé:
+ Bây giờ lập trình cho nút nhấn:
- Bạn kik chuột phải vào nút chọn properties -> mục Events -> Mouse
-> Pressleft ( chuột trái ) -> kik chuột phải mục Action chọn C- Action
- Và bạn lập trình như sau:
Với nút quay:
Nhắp đúp vào Press left
- Điền số 1 và chọn tag canhquat
Với nút dừng:
Nhắp đúp vào Press left
Diền số 0 và chọn tag canhquat:
Bước 4: Mô phỏng:
-Bạn lưu lại và ấn runtime
Bài 3: Hình tròn di chuyển theo phương x có thể tiến , lùi và dừng
+ Bước 1:
- Bạn vào Interal tags tạo 2 tag mới : ví dụ tag là dichtrai và tag dichphai:
- Loại Binary tag
+ Bước 2:
- Bạn vào graphics tạo 1 giao diện như sau:
+ Bước 3: Lập trình cho từng nút nhấn và hình tròn:
- Với nút nhấn dich trái ta làm như sau:
-
- Trong c – Ation
- Bạn làm theo hướng dấn sau:

-
-
-
-
Làm tương tự với Tag dich phải ta được dòng lệnh như sau:
ở đây chọn là 0 . Vì nó đang dịch theo phía trái:
- Hoặc các bạn vào c- action viết đúng như sau: (copy paste nhé)
SetTagBit("dichphai",0); //Return-Type: BOOL
SetTagBit("dichtrai",1); //Return-Type: BOOL
- Tương tự với nút dịch phải:
- Làm tương tự với nút dừng:
-
• Viết chương trình cho hình tròn di chuyển:
- Bạn kik chuột phải vào hình tròn chọn properties -> mục properties ->
Geometry
-> position x -> kik chuột phải mục Dynamic chọn C – Action
Và lập trình như sau
static int a=340;
if (GetTagBit("dichtrai")==1)
{
a=a-10;
}
if(a<=200)a=340;
if (GetTagBit("dichphai")==1)
{
a=a+10;
}
if(a>=600)a=340;
return a;
+ Bước 4: Mô phỏng:

Bài 4: Di chuyể hình tròn theo đường chéo:
+ Bước 1:
- Tạo 1 tag tên : tag_dich_xy1 - loại dữ liệu Binary tag. Một tag nữa tên:
tag_dich_xy2 - loại dữ unsigned 32 bit. Một nút nhấn di chuyển:
-
+ Bước 2:
- Vào graphics thiết kế giao diện sau:
-
• Viết chương trình cho hình tròn di chuyển:
- Bạn kik chuột phải vào hình tròn chọn properties -> mục properties ->
Geometry
-> position x -> kik chuột phải mục Dynamic chọn C – Action
Và lập trình như sau
- Position Y chọn tag : ‘ tag_dich_xy2 ’
- Viết chương trình cho nút di chuyển:
Bước 4: Mô phỏng:
Bài 5: Xuất dữ liệu ra Exel
+ Bước 1: Bạn vào Interal tags tạo 3 tag mới : ví dụ tag là dulieu1, dulieu2,
dulieu3.
Loại usigned 16 – bit value
+ Bước 2:
Vào graphics tạo 3 cái I/O field và 1 nút lưu để xuất file như sau:
- Ta gán tag lần lượt cho 3 cái I/O field như sau:
- I/O field 1 ta chọn dulieu1.
- I/O field 2 ta chọn dulieu2.
- I/O field 3 ta chọn dulieu3.
-
- Ta lập trình cho nút luu nhu sau:
- Vào VBS – Action
-

Và lập trình như sau:
Bước 4 : Mô phỏng:

×