Thực nghiệm và biên soạn tài liệu hướng dẫn chi tiết cho các bài thí nghiệm mới phần điện tử có ghép nối máy tính ở khoa vật lí

115 11 0
Thực nghiệm và biên soạn tài liệu hướng dẫn chi tiết cho các bài thí nghiệm mới phần điện tử có ghép nối máy tính ở khoa vật lí

Đ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

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KHOA VẬT LÍ ĐỖ THỊ THU HIẾU THỰC NGHIỆM VÀ BIÊN SOẠN TÀI LIỆU HƯỚNG DẪN CHI TIẾT CHO CÁC BÀI THÍ NGHIỆM MỚI PHẦN ĐIỆN TỬ CĨ GHÉP NỐI MÁY TÍNH Ở KHOA VẬT LÍ KHĨA LUẬN TỐT NGHIỆP Đà Nẵng, năm 2020 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KHOA VẬT LÍ ĐỖ THỊ THU HIẾU THỰC NGHIỆM VÀ BIÊN SOẠN TÀI LIỆU HƯỚNG DẪN CHI TIẾT CHO CÁC BÀI THÍ NGHIỆM MỚI PHẦN ĐIỆN TỬ CĨ GHÉP NỐI MÁY TÍNH Ở KHOA VẬT LÍ KHĨA LUẬN TỐT NGHIỆP Chun ngành: Vật lí học Khóa học: 2016 - 2020 Người hướng dẫn: TS Nguyễn Quý Tuấn Đà Nẵng, năm 2020 LỜI CÁM ƠN Được học tập ngơi trường có bề dày lịch sử oanh liệt dìu dắt tận tình quý thầy cô khoa Vật lý giúp cho ngày tốt hơn, thành cơng sống, có lẽ may mắn to lớn tơi Trải qua gần học kì, đến lúc phải rời xa nơi – Khoa Vật lý – Trường Đại học Sư Phạm – Đại học Đà Nẵng, vô biết ơn người chèo lái, vun đắp ước mơ cho để trưởng thành ngày hơm Lời em xin gửi lời cám ơn chân thành đến thầy cô khoa Vật lý không quãng khó khăn trao dồi học quý giá đến với đứa học trò nhiều thiếu sót chúng tơi Và đặc biệt người thầy dành tâm huyết nghiệp giảng dạy để giúp cho tơi có thêm nhiều học mới, nhiều sáng tạo phù hợp với phát triển công nghệ 4.0 - thầy Nguyễn Quý Tuấn bao năm qua thế, người thầy mang đầy nhiệt huyết trọng trách nhà giáo Bốn năm gắn bó mái ấm khoa Vật lý, đặc biệt lớp 16CVL cám ơn người bạn qua xuân Hơn nữa, xin gửi lời biết ơn sâu sắc đến ba mẹ - người cho tơi có đầy đủ điều kiện tốt đẹp để hồn thành hạn khóa học Cuối tơi xin kính chúc q thầy cô, ba mẹ, anh chị bạn sức khỏe, gặt hái nhiều thành công sống Chúc cho khoa Vật lý ngày tốt đẹp hơn! Sinh viên thực Đỗ Thị Thu Hiếu I LỜI CAM ĐOAN Tôi xin cam đoan đề tài khóa luận tốt nghiệp: “Thực nghiệm biên soạn tài liệu hướng dẫn chi tiết cho thí nghiệm phần điện tử có ghép nối máy tính khoa Vật lí” cơng trình nghiên cứu độc lập hướng dẫn giáo viên hướng dẫn TS Nguyễn Q Tuấn Ngồi khơng có chép người khác Đề tài, nội dung báo cáo thực tập sản phẩm mà thực nghiệm biên soạn chi tiết khoa Vật lí thời gian qua Các số liệu, kết trình bày báo cáo hồn tồn trung thực, tơi xin chịu hồn tồn trách nhiệm, kỷ luật môn nhà trường đề có vấn đề xảy Sinh viên thực Đỗ Thị Thu Hiếu II MỤC LỤC LỜI CÁM ƠN I LỜI CAM ĐOAN II DANH MỤC CỤM TỪ VIẾT TẮT VI DANH MỤC HÌNH ẢNH VII DANH MỤC BẢNG BIỂU IX Phần thứ nhất: MỞ ĐẦU 1 Lí chọn đề tài: Mục tiêu nghiên cứu: Nhiệm vụ nghiên cứu: Đối tượng phạm vi nghiên cứu: a Đối tượng nghiên cứu: b Phạm vi nghiên cứu: Phương pháp nghiên cứu: Tổng quan vấn đề nghiên cứu: Phần thứ hai: NỘI DUNG CHƯƠNG 1: CƠ SỞ LÍ LUẬN VỀ PHƯƠNG PHÁP GIẢNG DẠY VÀ ĐÁNH GIÁ THÍ NGHIỆM THỰC HÀNH VẬT LÍ .4 1.1 Dạy học phát triển lực: 1.1.1 Điều kiện để triển khai hiệu định hướng dạy học phát triển lực: 1.1.2 Dạy học theo định hướng phát triển lực: 1.2 Các lực chun biệt mơn Vật lí: 1.2.1 Xây dựng lực chuyên biệt cách cụ thể hóa lực chung: 1.2.2 Xây dựng lực chuyên biệt dựa đặc thù môn học: 10 1.3 Lợi ích việc dạy học phát triển lực: .16 III 1.3.1 Vai trò thực hành thí nghiệm Vật lí Đặc biệt vai trị máy vi tính thí nghiệm Vật lí: 16 1.3.2 Các đặc điểm thí nghiệm Vật lí: 17 1.3.3 Chức thí nghiệm vật lí dạy học vật lí: 18 CHƯƠNG 2: TỔNG QUAN LÝ THUYẾT VỀ MẠCH LẬP TRÌNH ARDUINO IDE VÀ PHẦN MỀM VISUAL STUDIO.202.1 Bo mạch phát triển Arduino: .20 2.1.1 Giới thiệu chung: 20 2.1.2 Bo mạch Arduino UNO: 21 2.2 Mơi trường phát triển tích hợp: 23 2.2.1 Giới thiệu phần mềm code Arduino IDE: 24 2.2.2 Quản lý thư viện: 25 2.2.3 Quản lý bo Arduino mở rộng: .27 2.3 Lập trình phần mềm Visual Studio máy tính: 27 2.3.1 Khởi tạo dự án: 28 2.3.2 Lập trình trao đổi liệu qua cổng nối tiếp: .30 CHƯƠNG 3: THIẾT KẾ NỘI DUNG TIẾN TRÌNH GIẢNG DẠY VÀ KIỂM TRA ĐÁNH GIÁ CHUYÊN MÔN 31 3.1 Khái qt hóa thí nghiệm có ghép nối truyền liệu từ máy tính khoa Vật lí: .31 3.2 Thiết kế thí nghiệm ghép nối máy tính: .33 3.2.1 Thí nghiệm 1: Điều khiển hiển thị LED RGB chuỗi kí tự nhập vào từ máy tính cho hiển thị lên hình LCD 33 3.2.2 Thí nghiệm 2: Điều khiển động quay theo góc nhập từ bàn phím máy tính 40 3.2.3 Thí nghiệm 3: Đo nhiệt độ độ ẩm môi trường 51 3.2.4 Thí nghiệm 4: Đo khoảng cách siêu âm 56 3.2.5 Thí nghiệm 5: Đo điều khiển nhiệt độ .61 IV 3.3 Xây dựng tiến trình giảng dạy: .67 3.4 Xây dựng rubric đánh giá kỹ năng: 68 3.4.1 Rubric đánh giá kỹ thực nghiệm, thái độ học tập trách nhiệm: 68 3.4.2 Rubric đánh giá kỹ làm việc nhóm: 70 3.4.3 Rubric đánh giá kỹ báo cáo thuyết trình: 72 Phần thứ ba: KẾT LUẬN 74 A Kết luận: 74 B Khuyến nghị: .74 TÀI LIỆU THAM KHẢO IX PHỤ LỤC PL Ý KIẾN CỦA NGƯỜI HƯỚNG DẪN X V DANH MỤC CỤM TỪ VIẾT TẮT Kí hiệu Cụm từ viết tắt ĐHSP – ĐHĐN Đại học Sư Phạm – Đại học Đà Nẵng HS Học sinh SV Sinh viên NL Năng lực NLTP Năng lực thành phần GV Giáo viên TN Thí nghiệm NLTN Năng lực thí nghiệm VĐK Vi điều khiển BCD Binary Coded Decimal RGB Red – Green – Blue LED Light Emitting Diode LCD Liquid Crystal Display USB Universal Serial Bus DC Direct Current PWM Pulse Width Modulation IC Intergraded Circuit COM Computer Output on Micro IDE Intergraded Drive Electronic PC Personal Computer VI DANH MỤC HÌNH ẢNH Hình Mối quan hệ mục tiêu hoạt động dạy học đánh giá dạy học định hướng phát triển lực Hình Các thành tố lực thực nghiệm 11 Hình Kit Arduino phiên 20 Hình Mơi trường phần mềm tích hợp Arduino IDE .21 Hình Hình ảnh bo mạch Arduino Uno R3 22 Hình Cửa sổ bổ sung thư viện vào chương trình cho Arduino 26 Hình Cửa sổ quản lý tìm kiếm bổ sung thư viện vòa Arduino IDE 26 Hình Cửa sổ trình đơn quản lý bo Arduino 27 Hình Mơi trường lập trình Visual Studion 2019 27 Hình 10 Chọn mẫu án cho chương trình cần sử dụng 28 Hình 11 Tạo dự án để thiết lập 28 Hình 12 Chọn tài nguyên cần thiết lập Toolbox .29 Hình 13 Giao diện sau hoàn thiện 29 Hình 14 Minh họa thí nghiệm ghép nối toàn phần .31 Hình 15 Gán nhãn để ghép nối mô-đun với chân bo mạch Arduino 34 Hình 16 Ghép nối với led RBG .34 Hình 17 Ghép nối với hình LCD .34 Hình 18 Minh họa hình dạng sơ đồ chân LED RGB 35 Hình 19 Minh họa tỉ lệ phần trăm điều chế xung PWM 36 Hình 20 Màn hình hiển thị LCD sử dụng chuẩn I2C cho Arduino 36 Hình 21 Bộ thí nghiệm sau ghép nối .37 Hình 22 Giao diện điều khiển thí nghiệm số 38 Hình 23 Kết thị hình LCD nhập kí tự vào từ bàn phím .38 Hình 24 Gán nhãn để ghép nối mơ-đun với chân bo mạch Arduino 41 Hình 25 Cấu trúc chung cho động Servo .41 Hình 26 Ghép nối với mô-đun Servo 42 Hình 27 Minh họa động bước sơ đồ nguyên lý bên động .43 Hình 28 Minh họa động bước loại hỗn hợp loại nam châm vĩnh cữu 43 Hình 29 Phương pháp điều khiển bước đủ 44 VII Hình 30 Giao tiếp điều khiển động bước qua bo mạch A4988 .45 Hình 31 Minh họa cấu tạo động điện chiều 46 Hình 32 Minh họa thay đổi chiều quay động điện chiều 46 Hình 33 Sơ đồ nguyên lý motor shield .47 Hình 34 Sơ đồ đầu tương đương L293D 47 Hình 35 Ghép nối mô-đun động DC với mạch cầu H bo Arduino 48 Hình 36 Bộ thí nghiệm số sau dược ghép nối 49 Hình 37 Giao diện điều khiển thí nghiệm số 49 Hình 38 Minh họa động quay thực tế 50 Hình 39 Gán nhãn để ghép nối mô-đun DHT11 với chân bo mạch Arduino 52 Hình 40 Quá trình trao đổi liệu DHT11 vi xử lý 53 Hình 41 Giao tiếp mơ-đun DHT11 với bo Arduino 53 Hình 42 Bộ thí nghiệm sau ghép nối .54 Hình 43 Giao diện đọc kết hiển thị thí nghiệm số 55 Hình 44 Kết hiển thị nhiệt độ độ ẩm thí nghiệm số .55 Hình 45 Gán nhãn để ghép nối mơ-đun SRF05 với chân bo mạch Arduino 56 Hình 46 Biểu đồ thời gian HC-SR05 57 Hình 47 Phát họa nguyên lý đo khoảng cách HC-SR05 57 Hình 48 Giao tiếp mơ-đun cảm biến siêu âm với Arduino .58 Hình 49 Bộ thí nghiệm sau ghép nối .59 Hình 50 Giao diện điều khiển thí nghiệm số 59 Hình 51 Kết hiển thị giá trị đo thí nghiệm số 60 Hình 52 Gán nhãn để ghép nối mô-đun cảm biến nhiệt độ DS18B20 nguồn nóng, lạnh với chân bo mạch Arduino 62 Hình 53 Sơ đồ chân cảm biến DS18B20 với loại đóng gói khác 62 Hình 54 Giao tiếp nguồn nóng nguồn lạnh với Arduino 64 Hình 55 Bộ thí nghiệm số sau ghép nối 65 Hình 56 Giao diện điều khiển thí nghiệm số 65 Hình 57 Kết hiển thị nhiệt độ thí nghiệm số .66 VIII /* - kiểm tra biến check -*/ if (check == "sv") { SERVO(); //gọi hàm SERVO } if (check == "dc") { MOTOR(); //gọi hàm MOTOR } if (check == "steps") { STEPS(); //gọi hàm STEPS } while (Serial.available()) //kiểm tra Serial hoạt động { check = Serial.readString(); //đọc liệu nhập từ Serial if (check == "sv") // biến check = "sv" { SERVO(); // gọi hàm SERVO } if (check == "dc") // biến check = "dc" { MOTOR(); //gọi hàm MOTOR } if (check == "steps") // biến check = "ss" { STEPS(); //gọi hàm STEPS } } } // Hàm SERVO void SERVO() { while (1) { PL 15 if (Serial.available() > 0) { String goc = Serial.readString(); //đọc giá trị góc nhập từ Serial if ( goc == "dc") // liệu nhập vào "dc" { check = goc; return; // gán biến check = "dc" // vịng lặp } if ( goc == "steps") // liệu nhập vào "steps" { check = goc; return; // gán biến check = "ss" // vịng lặp } myservo.write(goc.toInt()); // chuyển góc từ kiểu String qua Int,quay servo theo góc nhập từ Serial } } } // hàm MOTOR void MOTOR() { while (1) while (Serial.available() > 0) { String tocdo = Serial.readString(); //đọc giá trị góc nhập từ Serial if (tocdo == "sv") // liệu nhập vào "sv" { check = tocdo; return; // gán biến check = "sv" // vịng lặp } if (tocdo == "steps") // liệu nhập vào "ss" { check = tocdo; return; // gán biến check = "ss" // vịng lặp } } } PL 16 void STEPS() { while (1) { while (Serial.available()) { String c = Serial.readString(); //đọc liệu nhập từ Serial if (c == "sv") // liệu nhập vào "sv" { check = c; return; // gán biến check = "sv" //// vịng lặp } if (c == "dc") // liệu nhập vào "dc" { check = c; return; // gán biến check = "dc" // vịng lặp } if (c.toInt() >= 0) { digitalWrite(dirPin, LOW); for (int x = 0; x < c.toInt(); x++) { digitalWrite(stepPin, HIGH); delayMicroseconds(500); digitalWrite(stepPin, LOW); delayMicroseconds(500); } } } } } /* - THE END - */ Phụ lục 4: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;r PL 17 using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO.Ports; namespace WindowsFormsApp2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] ComList = SerialPort.GetPortNames(); comboBox1.Items.AddRange(ComList); groupBox2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { if (comboBox1.Text == " ") { MessageBox.Show("Vui Long Chon Cong COM", "Thong Bao", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (serialPort.IsOpen) { serialPort.Close(); button1.Text = "Connect"; groupBox2.Enabled = false; } else try { serialPort.PortName = comboBox1.Text; serialPort.Open(); button1.Text = "Disconnect"; groupBox2.Enabled = true; } catch { MessageBox.Show("Khong The Mo Cong COM"); } } private void textBox1_TextChanged(object sender, EventArgs e) { } private void button3_Click(object sender, EventArgs e) { serialPort.Write("sv"); groupBox3.Enabled = true; groupBox4.Enabled = false; groupBox5.Enabled = false; PL 18 } private void button2_Click(object sender, EventArgs e) { serialPort.Write(textBox1.Text); } private void button6_Click(object sender, EventArgs e) { serialPort.Write("steps"); groupBox3.Enabled = false; groupBox4.Enabled = false; groupBox5.Enabled = true; } private void button5_Click(object sender, EventArgs e) { serialPort.Write(textBox3.Text); } private void button7_Click(object sender, EventArgs e) { serialPort.Write("dc"); groupBox3.Enabled = false; groupBox4.Enabled = true; groupBox5.Enabled = false; } } } Phụ lục 5: #include #include #include LiquidCrystal_I2C lcd(0x27,16,2); const int DHTPIN = 2;//khai báo chân DHT const int DHTTYPE = DHT11; //khai báo loại DHT11 DHT dht(DHTPIN, DHTTYPE);//khai báo DHT void setup() { Serial.begin(9600); //khai báo tốc độ baud lcd.init();//cài đặt LCD lcd.backlight(); //bật đèn LCD dht.begin();//khởi tạo hàm dht } void loop(){ float h = dht.readHumidity();//gán biến h = độ ẩm đọc từ DHT float t = dht.readTemperature();//gán biến t = nhiệt độ đọc từ DHT lcd.setCursor(0,0); lcd.print("nhietdo:"); lcd.setCursor(10,0); lcd.println(t);//in LCD nhiệt độ lcd.setCursor(12,0); lcd.print("c "); Serial.println(t); lcd.setCursor(0,1); lcd.print("doam:"); lcd.setCursor(7,1); lcd.println(h); //in LCD độ ẩm lcd.setCursor(9,1); lcd.print("% "); Serial.println(h); PL 19 delay(2000); } /* - THE END - */ Phụ lục 6: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO.Ports; namespace WindowsFormsApp2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] ComList = SerialPort.GetPortNames(); comboBox1.Items.AddRange(ComList); groupBox2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { if (comboBox1.Text == " ") { MessageBox.Show("Vui Long Chon Cong COM", "Thong Bao", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (serialPort.IsOpen) { serialPort.Close(); button1.Text = "Connect"; groupBox2.Enabled = false; Timer1.Stop(); } else try { serialPort.PortName = comboBox1.Text; serialPort.Open(); button1.Text = "Disconnect"; groupBox2.Enabled = true; } catch { MessageBox.Show("Khong The Mo Cong COM"); } PL 20 } private void timer1_Tick(object sender, EventArgs e) { Timer1.Interval = 2000; String data = serialPort.ReadLine().ToString(); String[] dataTempHumid = data.Split(','); int Hum = (int)(Math.Round(Convert.ToDecimal(dataTempHumid[0]), 0)); int Temp = (int)(Math.Round(Convert.ToDecimal(dataTempHumid[1]), 0)); label1.Text = "Nhiệt độ: " + Hum.ToString() + "°C "; label2.Text = "Độ ẩm: " + Temp.ToString() + " % "; } private void button2_Click(object sender, EventArgs e) { serialPort.Write("ss"); Timer1.Start(); } } } Phụ lục 7: const int trig = 8; const int echo = 7; // chân trig HC-SR04 // chân echo HC-SR04 String check; //chuỗi kiểm tra void SENSORSRF05(); //ham sensor void setup() { // put your setup code here, to run once: Serial.begin(9600); //khai báo tốc độ baud pinMode(trig, OUTPUT); // chân trig phát tín hiệu pinMode(echo, INPUT); // chân echo nhận tín hiệu } void loop() { while (Serial.available()) //kiểm tra Serial hoạt động { check = Serial.readString(); //đọc liệu nhập từ Serial if (check == "ssrf") // biến check = "ss" { SENSORSRF05(); //gọi hàm SENSOR } } } //hàm SENSOR void SENSORSRF05() { PL 21 while (1) { while (Serial.available()) { unsigned long duration; // biến đo thời gian int distance; // biến lưu khoảng cách /* Phát xung từ chân trig */ digitalWrite(trig, 0); // tắt chân trig delayMicroseconds(2); digitalWrite(trig, 1); // phát xung từ chân trig delayMicroseconds(5); // xung có độ dài microSeconds digitalWrite(trig, 0); // tắt chân trig /* Tính tốn thời gian */ // Đo độ rộng xung HIGH chân echo duration = pulseIn(echo, HIGH); // Tính khoảng cách đến vật distance = int(duration / / 29.412); /* In kết Serial Monitor */ Serial.println(distance); delay(1000); } } } /* - THE END - */ Phụ lục 8: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO.Ports; namespace WindowsFormsApp4 { public partial class Form1 : Form { public Form1() { PL 22 InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] ComList = SerialPort.GetPortNames(); comboBox1.Items.AddRange(ComList); groupBox2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { if (comboBox1.Text == " ") { MessageBox.Show("Vui Long Chon Cong COM", "Thong Bao", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (serialPort.IsOpen) { serialPort.Close(); button1.Text = "Connect"; timer.Stop(); groupBox2.Enabled = false; } else try { serialPort.PortName = comboBox1.Text; serialPort.Open(); button1.Text = "Disconnect"; groupBox2.Enabled = true; } catch { MessageBox.Show("Khong The Mo Cong COM"); } } private void timer_Tick(object sender, EventArgs e) { //timer.Interval = 1000; string data = serialPort.ReadLine(); label1.Text = "Khoảng Cách: " + data.ToString(); } private void button2_Click(object sender, EventArgs e) { serialPort.Write("ssrf"); timer.Start(); } private void label2_Click(object sender, EventArgs e) { } private void groupBox2_Enter(object sender, EventArgs e) { PL 23 } } } Phụ lục 9: #define LANH #define NONG #include #include // Chân nối với Arduino #define ONE_WIRE_BUS //Thiết đặt thư viện onewire OneWire oneWire(ONE_WIRE_BUS); //Mình dùng thư viện DallasTemperature để đọc cho nhanh DallasTemperature sensors(&oneWire); String check; //chuỗi kiểm tra void SENSORDS18B20(); //ham sensor void NGUONLANH(); void NGUONNONG(); void setup() { // put your setup code here, to run once: Serial.begin(9600); //khai báo tốc độ baud sensors.begin(); pinMode(LANH, OUTPUT); pinMode(NONG, OUTPUT); digitalWrite(LANH, HIGH); digitalWrite(NONG, HIGH); } void loop() { while (Serial.available()) //kiểm tra Serial hoạt động { check = Serial.readString(); //đọc liệu nhập từ Serial if (check == "ssds") // biến check = "ss" { SENSORDS18B20(); //gọi hàm SENSORDS18B20 } if (check == "dklanh") // biến check = "ss" { PL 24 NGUONLANH(); //gọi hàm DKQUAT(); } if (check == "dknong") // biến check = "ss" { NGUONNONG(); //gọi hàm DKNHIET(); } } } //hàm SENSOR void SENSORDS18B20() { while (1) { while (Serial.available()) { String ss = Serial.readString(); //đọc liệu nhập từ Serial if (ss == "dklanh") // biến check = "ss" { check = ss; return; } if (ss == "dknong") // biến check = "ss" { check = ss; return; } } sensors.requestTemperatures(); Serial.println(sensors.getTempCByIndex(0)); // ic nên dùng //chờ s đọc để bạn kiệp thấy thay đổi delay(1000); } } void NGUONNONG() { PL 25 while (1) { while (Serial.available()) { String n = Serial.readString(); //đọc liệu nhập từ Serial if (n == "ssds") // biến check = "ss" { check = n; return; } if (n == "dklanh") // biến check = "ss" { check = n; return; } } digitalWrite(LANH, LOW); delay(5000); digitalWrite(LANH, HIGH); break; } } void NGUONLANH() { while (1) { while (Serial.available()) { String l = Serial.readString(); //đọc liệu nhập từ Serial if (l == "ssds") // biến check = "ssds" { check = l; return; } if (l == "dknong") // biến check = "ss" PL 26 { check = l; return; } } digitalWrite(NONG, LOW); delay(5000); digitalWrite(NONG, HIGH); break; } } /* - THE END - */ 10 Phụ lục 10: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO.Ports; namespace WindowsFormsApp5 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] ComList = SerialPort.GetPortNames(); comboBox1.Items.AddRange(ComList); groupBox2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { if (comboBox1.Text == " ") { MessageBox.Show("Vui Long Chon Cong COM", "Thong Bao", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (serialPort.IsOpen) { serialPort.Close(); PL 27 button1.Text = "Connect"; timer1.Stop(); groupBox2.Enabled = false; } else try { serialPort.PortName = comboBox1.Text; serialPort.Open(); button1.Text = "Disconnect"; groupBox2.Enabled = true; } catch { MessageBox.Show("Khong The Mo Cong COM"); } } private void label1_Click(object sender, EventArgs e) { } private void button2_Click(object sender, EventArgs e) { serialPort.Write("ssds"); timer1.Start(); } private void timer1_Tick(object sender, EventArgs e) { timer1.Interval = 500; string data = serialPort.ReadLine(); label1.Text = "Nhiệt độ: " + data; timer1.Stop(); } private void button3_Click(object sender, EventArgs e) { serialPort.Write("dklanh"); //timer1.Start(); } private void button4_Click(object sender, EventArgs e) { serialPort.Write("dknong"); //timer1.Start(); } } PL 28 Ý KIẾN CỦA NGƯỜI HƯỚNG DẪN ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Ý kiến: Đánh dấu (X) vào ô lựa chọn Đồng ý thông qua báo cáo Không đồng ý thông qua báo cáo Đà Nẵng, ngày 22 tháng 06 năm 2020 Người hướng dẫn (Ký ghi rỏ họ tên) VII ... PHẠM KHOA VẬT LÍ ĐỖ THỊ THU HIẾU THỰC NGHIỆM VÀ BIÊN SOẠN TÀI LIỆU HƯỚNG DẪN CHI TIẾT CHO CÁC BÀI THÍ NGHIỆM MỚI PHẦN ĐIỆN TỬ CĨ GHÉP NỐI MÁY TÍNH Ở KHOA VẬT LÍ KHĨA LUẬN TỐT NGHIỆP Chun ngành: Vật. .. dụng điện tử sống đại Với lí tích cực trên, qua hướng dẫn nghiên cứu tơi chọn cho đề tài ? ?Thực nghiệm biên soạn tài liệu hướng dẫn chi tiết cho thí nghiệm phần điện tử có ghép nối máy tính Khoa Vật. .. Vai trị thực hành thí nghiệm Vật lí Đặc biệt vai trị máy vi tính thí nghiệm Vật lí: 16 1.3.2 Các đặc điểm thí nghiệm Vật lí: 17 1.3.3 Chức thí nghiệm vật lí dạy học vật lí:

Ngày đăng: 19/05/2021, 23:17

Từ khóa liên quan

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

Tài liệu liên quan