Thiết kế thi công hệ thống lưu kho tự động kết hợp scada để điều khiển, quản lý và giám sát hệ thống

183 11 0
Thiết kế   thi công hệ thống lưu kho tự động kết hợp scada để điều khiển, quản lý và giám sát hệ thống

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ - THI CÔNG HỆ THỐNG LƯU KHO TỰ ĐỘNG KẾT HỢP SCADA ĐỂ ĐIỀU KHIỂN, QUẢN LÝ VÀ GIÁM SÁT HỆ THỐNG NGÀNH: KỸ THUẬT CƠ, ĐIỆN TỬ GIẢNG VIÊN HƯỚNG DẪN: ThS PHẠM QUỐC PHƯƠNG Sinh viên thực hiện: MSSV: Lớp: Lê Trương Anh Khoa 1811032777 18DCTA2 Bùi Tiến Minh 1811032732 18DCTA2 Lê Hữu Hên 1811032788 18DCTA2 Tp Hồ Chí Minh, ngày 30 tháng 07 năm 2022 MỤC LỤC Phiếu đăng kí tên đề tài ĐATN Phiếu giao nhiệm vụ LỜI CAM ĐOAN i LỜI CẢM ƠN ii TÓM TẮT………………………………………………………………………….iii ABSTRACT……………………………………………………………………… iv MỤC LỤC v DANH MỤC HÌNH VẼ viii DANH SÁCH CÁC CHỮ VIẾT TẮT………………………………………… xii DANH MỤC BẢNG…………………………………………………………… xiii CHƯƠNG GIỚI THIỆU 1.1 Lý chọn đề tài 1.2 Mục tiêu thực đề tài 1.3 Đối tượng phạm vi nghiên cứu 1.4 Phương pháp nghiên cứu 1.5 Ý nghĩa thực tiễn đề tài CHƯƠNG TỔNG QUAN 2.1 Giới thiệu chung kho hàng tự động 2.2 Mã QR 2.2.1 Giới thiệu mã QR 2.2.2 Ứng dụng mã QR 2.3 Nhiệm vụ…………………………………………………………….………6 CHƯƠNG CƠ SỞ LÝ THUYẾT v 3.1 Các phần mềm lập trình 3.1.1 Phần mềm GX Work2 3.1.2 Microsoft SQL Server 2014 11 3.1.3 Visual Studio 2019 12 3.2 Thiết bị phần cứng 13 3.2.1 Cảm biến hồng ngoại 13 3.2.3 Bộ điều khiển khả trình PLC (Program Logic Controller) 16 3.3 Nhận diện QR Code Visual Studio…………………………………17 3.3.1 Tổng quan thư viện Zxing…………………………………….… 17 3.3.2 Xử lí thơng tin hình ảnh………………………………………………20 CHƯƠNG THIẾT KẾ MƠ HÌNH, THÍ NGHIỆM 22 4.1 Mơ tả quy trình hệ thống lưu kho tự động 22 4.1.1 Chia vùng chức quy trình hệ thống 22 4.1.2 Mô tả chức vùng nhiệm vụ 23 4.2 Thiết kế khí tính tốn chọn động 23 4.2.1 Tính tốn chọn động cho cấu di chuyển hàng trục Z 23 4.2.2 Tính tốn chọn động cho cấu di chuyển hàng trục Y 26 4.2.3 Tính tốn chọn động cho cấu di chuyển hàng trục X 28 4.2.4 Tính toán chọn động cho băng tải hàng 30 4.2.5 Bản vẽ thiết kế khí 33 4.3 Thiết kế mạch điện 40 4.3.1 Sơ đồ khối hệ thống 40 4.3.2 Khối nguồn 41 4.3.3 Khối PLC 42 4.3.4 Driver điều khiển động bước 44 4.3.5 Camera 48 4.3.6 Mạch cầu H điều khiển động chiều 49 4.3.7 Khối cảm biến 52 vi 4.3.8 Khối SCADA 53 4.3.9 Khối sở liệu 53 4.3.10 Thiết kế sở liệu SQL Server 54 4.3.11 Thiết kế mạch điện điều khiển hệ thống 55 4.4 Thiết kế phần mềm 64 4.5 Thiết kế phần mềm điều khiểm HMI……………………………… … 61 4.6 Giải thuật điều khiển hệ thống……………………………………….… 64 CHƯƠNG KẾT QUẢ HỆ THỐNG 68 5.1 Thi công mơ hình 68 5.1.1 Thiết kế phần cứng 68 5.2 Kết thi cơng mơ hình 73 5.2.1 Đưa hàng vào kho 73 5.2.2 Xuất hàng kho 76 CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 78 6.1 Kết luận 78 6.1.1 Ưu điểm 78 6.1.2 Khuyết điểm 78 6.2 Hướng phát triển 78 KẾT LUẬN 80 TÀI LIỆU THAM KHẢO 81 PHỤ LỤC 82 vii DANH MỤC HÌNH VẼ Hình 2.1: Ngăn chứa hàng hệ thống lưu kho tự động Hình 2.2: Cơ cấu lấy hàng hệ thống lưu kho Hình 2.3: Kết cấu mã QR Hình 3.1.1: Phần mềm GX WORK Hình 3.1.2: Cấu hình hình GX Work2 Hình 3.1.3: Thanh tiêu đề Hình 3.1.4: Thanh cơng cụ 10 Hình 3.1.5: Thanh trạng thái 11 Hình 3.1.6: Giới thiệu phần mềm SQL Server 15 Hình 3.1.7: Giới thiệu phần mềm Visual Studio 15 Hình 3.2.1: Cảm biến hồng ngoại 13 Hình 3.2.2: Cấu tạo động bước 14 Hình 3.2.3: Giãn đồ xung điều khiển dạng Wave Drive 14 Hình 3.2.4: Giãn đồ xung điều khiển dạng Ful Step 17 Hình 3.2.5: Giãn đồ xung điều khiển dạng Half Step 17 Hình 3.2.6: Giãn đồ xung điều khiển dạng Micro Stepping 17 Hình 3.2.7: Sơ đồ khối hệ thống PLC 17 Hình 3.2.8: Chu kỳ làm việc PLC 17 Hình 3.3.1: Khai báo thư viện Zxing 20 Hình 3.3.2: Nhận diện mã QR Code 21 Hình 3.3.3: Xử lí tín hiệu phản hồi 21 viii Hình 4.1: Động bước NEMA 17 25 Hình 4.2: Động băng tải hàng 32 Hình 4.3: Bản vẽ 3D thiết kế trục Z 33 Hình 4.3.1: Thi cơng hồn thành trục Z 33 Hình 4.4: Bản vẽ 3D thiết kế trục Y 34 Hình 4.4.1: Thi cơng hồn thành trục Y 35 Hình 4.5: Bản vẽ 3D thiết kế trục X 36 Hình 4.5.1: Thi cơng hồn thành trục X 36 Hình 4.6: Bản vẽ 3D thiết kế băng tải hàng 37 Hình 4.6.1: Thi cơng hồn thành băng tải hàng 37 Hình 4.7: Bản vẽ 3D thiết kế kho lưu hàng 38 Hình 4.7.1: Thi cơng hồn thành kho lưu hàng 38 Hình 4.8: Bản vẽ 3D tổng thể hệ thống lưu kho tự động 39 Hình 4.9: Sơ đồ khối hệ thống 40 Hình 4.10: Nguồn 24V DC, 10A 41 Hình 4.11: PLC Mitshubishi FX 3U 24MT 42 Hình 4.12: Driver TB6600 4A, 9-42V DC 44 Hình 4.13: Sơ đồ nối dây Driver TB6600 với PLC 45 Hình 4.14: Webcam Genius Facecam 1000X HD 48 Hình 4.15: Mơ hình mạch cầu H 49 Hình 4.16: Sơ đồ mạch điện động quay thuận 50 Hình 4.17: Sơ đồ mạch điện động quay nghịch 50 Hình 4.18: Rơ le trung gian 51 ix Hình 4.19: Cảm biến hồng ngoại 52 Hình 4.20: Sơ đồ đấu dây cảm biến hồng ngoại 53 Hình 4.21: Kết nối profinet PLC với PC 53 Hình 4.22: Kết nối vào SQL Server 54 Hình 4.23: Bảng vẽ thiết kế bố trí thiết bị tủ điện 55 Hình 4.24: Bản vẽ mạch điều khiển trung tâm PLC HMI 55 Hình 4.25: Bản vẽ mạch điều khiển động băng tải 56 Hình 4.26: Sơ đồ kết nối thiết bị 56 Hình 4.27: Giao diện giám sát 57 Hình 4.28: Tạp Window forms 58 Hình 4.29: Cửa sổ làm việc phần mềm Visual Studio 59 Hình 4.30: Thêm thư viện hình ảnh cho dự án 59 Hình 4.31: Tạo kết nối sở liệu – b1 59 Hình 4.32: Tạo kết nối sở liệu – b2 60 Hình 4.33: Kết nối sở liệu 60 Hình 4.34: Tạo Table 61 Hình 4.35: Màn hình 61 Hình 4.36: Màn hình điều khiển chế độ Local 59 Hình 4.37: Màn hình điều khiển chế độ Manual 62 Hình 4.38: Màn hình điều khiển chế dộ Auto 63 Hình 4.39: Lưu đồ giải thuật trình xuất hàng 64 Hình 4.40: Lưu đồ giải thuật trình nhập hàng 65 Hình 4.41: Lưu đồ giải thuật điều khiển cánh tay nâng 66 x Hình 4.42: Lưu đồ giải thuật chương trình 67 Hình 5.1: Mơ hình cánh tay nâng hàng 68 Hình 5.2: Kho chứa hàng 74 Hình 5.3: Băng tải vận chuyển hàng - vào 70 Hình 5.4: Bảng thiết bị điều khiển 71 Hình 5.5: Tổng quan mơ hình 72 Hình 5.6: Cảm biến phát hàng camera quét mã QR 73 Hình 5.7: Cánh tay nhận hàng từ băng tải 74 Hình 5.8: Cánh tay nâng hàng lên 74 Hình 5.9: Cánh tay đến vị trí 75 Hình 5.10: Quét max để lấy hàng 76 Hình 5.11: Cánh tay lấy hàng xuất kho 76 Hình 5.12: Cánh tay bỏ hàng lên băng tải 77 xi DANH SÁCH CÁC CHỮ VIẾT TẮT STT Ký hiệu chữ viết tắt Chữ viết đầy đủ PLC Programable Logic Controller QR Quick Response Code HMI Human Machine Interface mm milimet Supervisory Control Anh Data SCADA Acquisition V Volt SQL Structured Query Language Relatinonal Database Management RDBMS System xii DANH MỤC BẢNG Bảng 3.1: Các định dạng hỗ trợ thư viện Zxing…………………………… 18 Bảng 3.2: Thành phần thư viện Zxing………….………………………………19 Bảng 3.3: Các thành phần khác thư viện Zxing ………………………………20 Bảng 4.1: Chia vùng chức năng………………………………………………… 22 Bảng 4.2: Thông số kĩ thuật PLC FX3U………………………………………… 43 Bảng 4.3: Bảng cài đặt dòng điện cấp cho động cơ…………………………… 46 Bảng 4.4: Bảng cài đặt vi bước cho động cơ…………………………………… 47 Bảng 4.5: Bảng thông tin xuất nhập hàng…………………………………………54 xiii Thread.Sleep(100); plc.SetDevice("D176", 6); } private void manual7_Click(object sender, EventArgs e) { if (vitri7.Visible == false) { plc.SetDevice("M100", 1); plc.SetDevice("M101", 0); } else { plc.SetDevice("M100", 0); plc.SetDevice("M101", 1); } Thread.Sleep(100); plc.SetDevice("D176", 7); } private void manual8_Click(object sender, EventArgs e) { if (vitri8.Visible == false) { plc.SetDevice("M100", 1); plc.SetDevice("M101", 0); } else { plc.SetDevice("M100", 0); plc.SetDevice("M101", 1); } Thread.Sleep(100); plc.SetDevice("D176", 8); } private void manual9_Click(object sender, EventArgs e) { if (vitri9.Visible == false) { plc.SetDevice("M100", 1); plc.SetDevice("M101", 0); } else { plc.SetDevice("M100", 0); plc.SetDevice("M101", 1); } Thread.Sleep(100); plc.SetDevice("D176", 9); } private void dgvBaocao_CellContentClick(object sender, DataGridViewCellEventArgs e) { int i; i = dgvBaocao.CurrentRow.Index; //tb } private void btnadd_Click(object sender, EventArgs e) { try { //if (captureDevice != null) { //if (!captureDevice.IsRunning) { if (connection == null) { connection = new SqlConnection(str); } if (connection.State == ConnectionState.Closed) { connection.Open(); } string vitrikho = txtVT.Text.Trim(); //string str1 = string.Join("", DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M')); command = connection.CreateCommand(); command.CommandText = "insert into KHO values('" + vitrikho + "','" + string.Join("", DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M')) + "','" + txtMH.Text + "',N'" + txtTSP.Text + "',N'" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "','" + " " + "')"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } command.CommandText = "insert into XUATNHAP values('" + string.Join("", DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M')) + "','" + txtMH.Text + "',N'" + txtTSP.Text + "',N'" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + vitrikho + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "','" + " " + "')"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } plc.SetDevice("M80", 1); plc.SetDevice("M100", 1); plc.SetDevice("M101", 0); //Thread.Sleep(100); int i; for (i = 0; i < 9; i++) { if (Vitri_uutien[i] == Int32.Parse(vitrikho)) { if (trangthai_vitriuutien[i] == 0) { trangthai_vitriuutien[i] = 1; plc.SetDevice("D176", Vitri_uutien[i]); } break; } } //cmd.ExecuteNonQuery(); loaddata_kho(); update_SQL(); } } } catch { } } private void btndel_Click(object sender, EventArgs e) { command = connection.CreateCommand(); command.CommandText = "delete from KHO where VITRIKHO='" + txtVT.Text + "'"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } //thêm vào SQL thông tin command = connection.CreateCommand(); //command.CommandText = "insert into KHOHANG values('" + manhaphang[i] + "','" + mahang[i] + "','" + tenhang[i] + "','" + tencongty[i] + "','" + solo[i] + soluong[i] + ngaynhap[i] + "','" + ngayxuat[i] + "')"; command.CommandText = "insert into XUATNHAP values('" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M') + "','" + txtMH.Text + "','" + txtTSP.Text + "','" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + txtVT.Text + "','" + " " + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "')"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } plc.SetDevice("M80", 1); int i; string result; result = txtMH.Text + ";" + txtTSP.Text + ";" + txtTCT.Text + ";" + TXTSLo.Text + ";" + TXTSL.Text + ";"; plc.SetDevice("M100", 0); plc.SetDevice("M101", 1); //Thread.Sleep(100); for (i = 0; i < 10; i++) { if (QRCode[i] == result.ToString()) { //int vitri_new = Int32.Parse(vitrikho[i]); trangthai_vitriuutien[i] = 0; plc.SetDevice("D176", Vitri_uutien[i]); break; } } loaddata_kho(); update_SQL(); } private void txtTenHang_TextChanged(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { if(connection==null) { connection = new SqlConnection(str); } if(connection.State==ConnectionState.Closed) { connection.Open(); } string vitrikho = txtTimKiem.Text.Trim(); //SqlCommand sqlCmd = new SqlCommand(); command.CommandType = CommandType.Text; command.CommandText = "select * from KHO where VITRIKHO='" + vitrikho + "'"; command.Connection = connection; //Thucthi SqlDataReader reader = command.ExecuteReader(); if(reader.Read()) { txtVT.Text = reader.GetString(0); txtMNH.Text = reader.GetString(1); txtMH.Text = reader.GetString(2); txtTSP.Text = reader.GetString(3); txtTCT.Text = reader.GetString(4); TXTSLo.Text = reader.GetString(5); TXTSL.Text = reader.GetString(6); } reader.Close(); } private void button3_Click(object sender, EventArgs e) { captureDevice = new VideoCaptureDevice(filterinfocollection[cbDevice.SelectedIndex].MonikerString); captureDevice.NewFrame += CaptureDevice_NewFrame; captureDevice.Start(); //timer1.Start(); camera.DiscreteValue1 = true; } private void button4_Click(object sender, EventArgs e) { if (captureDevice.IsRunning) { captureDevice.Stop(); pictureBox.Image = null; } camera.DiscreteValue1 = false; } private void btnXuatBaoCao_Click(object sender, EventArgs e) { //int ii; for (int i = 0; i < dem_data; i++) { //thêm vào SQL thông tin command = connection.CreateCommand(); //command.CommandText = "insert into KHOHANG values('" + manhaphang[i] + "','" + mahang[i] + "','" + tenhang[i] + "','" + tencongty[i] + "','" + solo[i] + soluong[i] + ngaynhap[i] + "','" + ngayxuat[i] + "')"; command.CommandText = "insert into KHOHANG values('" + data[i,0] + "','" + data[i,1] + "','" + data[i, 2] + "','" + data[i, 3] + "','" + data[i, 4] + "','" + data[i,5] + "','" + data[i, 6] + "','" + data[i, 7] + "','" + data[i, 8] + "')"; command.ExecuteNonQuery(); loaddata_xuatnhap(); } } private void btnedit_Click(object sender, EventArgs e) { string vitrikho = txtVT.Text.Trim(); //SqlCommand sqlCmd = new SqlCommand(); command.CommandType = CommandType.Text; command.CommandText = "select * from KHO where VITRIKHO='" + vitrikho + "'"; command.Connection = connection; //Thucthi SqlDataReader reader = command.ExecuteReader(); if (reader.Read()) { if( reader.GetString(6)==" ") { //string str1 = string.Join("", DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M')) + txtMNH.Text; command = connection.CreateCommand(); command.CommandText = "update KHO set MANHAPHANG='" + txtMNH.Text + "',MAHANG='" + txtMH.Text + "',TENHANG='" + txtTSP.Text + "',TENCONGTY='" + txtTCT.Text + "',SOLO='" + TXTSLo.Text + "',SOLUONG='" + TXTSL.Text + "',THOIGIANNHAP = '" + " " + "',THOIGIANXUAT = '" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "' where VITRIKHO = '" + txtVT.Text + "'"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } //command = connection.CreateCommand(); command = connection.CreateCommand(); //command.CommandText = "insert into KHOHANG values('" + manhaphang[i] + "','" + mahang[i] + "','" + tenhang[i] + "','" + tencongty[i] + "','" + solo[i] + soluong[i] + ngaynhap[i] + "','" + ngayxuat[i] + "')"; command.CommandText = "insert into XUATNHAP values('" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M') + "','" + txtMH.Text + "','" + txtTSP.Text + "','" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + txtVT.Text + "','" + " " + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "')"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } } else { //string str1 = string.Join("", DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M')) + txtMNH.Text; command = connection.CreateCommand(); command.CommandText = "update KHO set MANHAPHANG='" + txtMNH.Text + "',MAHANG='" + txtMH.Text + "',TENHANG='" + txtTSP.Text + "',TENCONGTY='" + txtTCT.Text + "',SOLO='" + TXTSLo.Text + "',SOLUONG='" + TXTSL.Text + "',THOIGIANNHAP = '" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt")+ "',THOIGIANXUAT = '" + " " + "' where VITRIKHO = '" + txtVT.Text + "'"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } //command = connection.CreateCommand(); command = connection.CreateCommand(); //command.CommandText = "insert into KHOHANG values('" + manhaphang[i] + "','" + mahang[i] + "','" + tenhang[i] + "','" + tencongty[i] + "','" + solo[i] + soluong[i] + ngaynhap[i] + "','" + ngayxuat[i] + "')"; command.CommandText = "insert into XUATNHAP values('" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt").Split(' ', '-', ':', 'M') + "','" + txtMH.Text + "','" + txtTSP.Text + "','" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + txtVT.Text + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "','" + " " + "')"; try { command.ExecuteNonQuery(); } catch (Exception ex) { //throw ex; } } } //cmd.ExecuteNonQuery(); loaddata_kho(); update_SQL(); } private void button2_Click(object sender, EventArgs e) { if (connection == null) { connection = new SqlConnection(str); } if (connection.State == ConnectionState.Closed) { connection.Open(); } string manhaphang = txtTimKiem.Text.Trim(); //SqlCommand sqlCmd = new SqlCommand(); command.CommandType = CommandType.Text; command.CommandText = "select * from KHOHANG where MANHAPHANG=@MANHAPHANG"; //định nghĩa SqlParameter parMANHAPHANG = new SqlParameter("@MANHAPHANG", SqlDbType.NVarChar); parMANHAPHANG.Value = txtMNH.Text.Trim(); command.Parameters.Add(parMANHAPHANG); command.Connection = connection; //Thucthi SqlDataReader reader = command.ExecuteReader(); if (reader.Read()) { txtMH.Text = reader.GetString(1); txtTSP.Text = reader.GetString(2); txtTCT.Text = reader.GetString(3); TXTSLo.Text = reader.GetString(4); TXTSL.Text = reader.GetString(5); txtVT.Text = reader.GetString(6); } reader.Close(); } private void dgvxuatnhap_CellContentClick(object sender, DataGridViewCellEventArgs e) { int i; i = dgvBaocao.CurrentRow.Index; txtMNH.Text = dgvBaocao.Rows[i].Cells[1].Value.ToString(); txtMH.Text = dgvBaocao.Rows[i].Cells[2].Value.ToString(); txtTSP.Text = dgvBaocao.Rows[i].Cells[3].Value.ToString(); txtTCT.Text = dgvBaocao.Rows[i].Cells[4].Value.ToString(); TXTSLo.Text = dgvBaocao.Rows[i].Cells[5].Value.ToString(); TXTSL.Text = dgvBaocao.Rows[i].Cells[6].Value.ToString(); txtVT.Text = dgvBaocao.Rows[i].Cells[0].Value.ToString(); //command = connection.CreateCommand(); //command.CommandText = "update KHOHANG values('" + dgvBaocao.Rows[i].Cells[0].Value.ToString() + "','" + txtMH.Text + "',N'" + txtTSP.Text + "',N'" + txtTCT.Text + "','" + TXTSLo.Text + "','" + TXTSL.Text + "','" + txtVT.Text + "','" + DateTime.Now.ToString("yyyy-MM-dd h:mm:ss tt") + "','" + DateTime.Now.ToString("yyyy-MMdd h:mm:ss tt") + "')"; } private void btnEnScan_Click(object sender, EventArgs e) { captureDevice = new VideoCaptureDevice(filterinfocollection[cbDevice.SelectedIndex].MonikerString); captureDevice.NewFrame += CaptureDevice_NewFrame; captureDevice.Start(); timer1.Start(); camera.DiscreteValue1 = true; txtMNH.Enabled = false; txtMH.Enabled = false; txtTSP.Enabled = false; txtTCT.Enabled = false; TXTSLo.Enabled = false; TXTSL.Enabled = false; txtVT.Enabled = false; } private void btnDisScan_Click(object sender, EventArgs e) { try { if (captureDevice.IsRunning) { captureDevice.Stop(); pictureBox.Image = null; } camera.DiscreteValue1 = false; } catch (Exception ex) { } txtMNH.Enabled = true; txtMH.Enabled = true; txtTSP.Enabled = true; txtTCT.Enabled = true; TXTSLo.Enabled = true; TXTSL.Enabled = true; txtVT.Enabled = true; } private void timer3_Tick(object sender, EventArgs e) { textBox1.Text = ""; } } } ... - thi công hệ thống lưu kho tự động kết hợp SCADA để điều khiển, quản lý giám sát hệ thống? ?? đề tài để nghiên cứu phát triển 1.2 Mục tiêu thực đề tài Hệ thống lưu kho tự động kết nhiều công nghệ... tài: Thi? ??t kế - Thi công hệ thống lưu kho tự động kết hợp SCADA để điều khiển, quản lí giám sát hệ thống Bao gồm nhiệm vụ: Tìm hiểu sở lý thuyết đề tài Thi? ??t kế thi công khí mơ hình Thi? ??t kế giải... lưu kho tự động, sử dụng mã QR để nhận dạng hàng hóa, hệ thống điều khiển giám sát hệ thống SCADA, tích hợp tính quản trị hệ sở liệu hàng hóa Dùng SQL Server để làm nơi lưu trữ sở liệu cho hệ thống

Ngày đăng: 28/02/2023, 16:24

Tài liệu cùng người dùng

Tài liệu liên quan