Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 115 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
115
Dung lượng
2,98 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐÀO TẠO CHẤT LƯỢNG CAO NGÀNH CNKT ĐIỆN TỬ TRUYỀN THÔNG ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: XE CẢNH BÁO KHÍ GAS ĐIỀU KHIỂN QUA ĐIỆN THOẠI THƠNG MINH GVHD SVTH MSSV Khố : Th.S NGUYỄN NGƠ LÂM : LÊ HỒNG : 12141438 : 2012-2016 SKL004942 Tp Hồ Chí Minh, tháng 07/2017 TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬTTHÀNH PHỐ HỒ CHÍ MINH ́ KHOA ĐÀO TAỌ CHÂT LƢƠNGG̣ CAO ĐỒ ÁN TỐT NGHIỆP SVTH: LÊ HỒNG MSSV: 12141438 Khố: 2012-2016 Ngành: CNKT Điện tử Truyền thơng GVHD: Th.S NGUYỄN NGƠ LÂM Tp Hồ Chí Minh, tháng năm 2017 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc *** Tp Hồ Chí Minh, ngày tháng năm 2016 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Lê Hoàng MSSV: 12141438 Ngành: CNKT Điện tử Truyền Thông Lớp: 12141CLDT1 Giảng viên hƣớng dẫn: ThS Nguyễn Ngô Lâm ĐT: 01284822444 Ngày nhận đề tài: Ngày nộp đề tài: Tên đề tài : Xe Tƣ ̣Hành Cảnh Báo KhiG ́ as Điều Khiển Qua Điện Thoại Các số liệu, tài liệu ban đầu: Nội dung thƣc ̣ hiêṇ đềtài: Sản phẩm: GIẢNG VIÊN HƢỚNG DẪN CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆTNAM Độc lập – Tự – Hạnh Phúc ******* ́ PHIÊU NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN Họ tên Sinh viên: Lê Hoàng MSSV: 12141438 Ngành: CNKT Điện tử, Truyền thông Tên đề tài: Xe Tƣ H ̣ ành Báo Gas Điều Khiển Qua Điện Thoại Thông Minh Họ tên Giáo viên hƣớng dẫn: Th.S Nguyễn Ngô Lâm NHẬN XÉT Về nội dung đề tài & khối lƣợng thực hiện: Ƣu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm:……………….(Bằng chữ: ) Tp Hồ Chí Minh, ngày tháng Giáo viên hƣớng dẫn (Ký & ghi rõ họ tên) năm 20… CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh Phúc ******* ́ PHIÊU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên: Lê Hoàng MSSV: 12141438 Ngành: CNKT Điện tử, Truyền thông Tên đề tài: Xe Tƣ H ̣ ành Báo Gas Điều Khiển Qua Điện Thoại Thông Minh Họ tên Giáo viên phản biện: NHẬN XÉT Về nội dung đề tài & khối lƣợng thực hiện: Ƣu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm:……………….(Bằng chữ: ) Tp Hồ Chí Minh, ngày tháng Giáo viên phản biện (Ký & ghi rõ họ tên) năm 20… ĐỒ ÁN TỐT NGHIỆP LỜI CẢM ƠN Trong suốt thời gian thực đồ án em nhận đƣợc trợ giúp tận tình thầy Nguyễn Ngơ Lâm để em hồnh thành đồ án Em xin chân thành cảm ơn quý thầy, cô trƣờng Đại Học Sƣ Phạm Kỹ Thuật TP.HCM, đặc biệt thầy cô khoa Điện - Điện Tử, nhiệt tình giúp đỡ, truyền đạt kiến thức suốt trình học tập chúng em trƣờng Vốn kiến thức đƣợc tiếp thu q trình học tập khơng tảng cho trình thực đồ án tốt nghiệp mà hành trang quý báu cho nghiệp chúng em sau Em xin cảm ơn ủng hộ giúp đỡ nhiệt tình gia đình, bạn bè, ngƣời thân động viên, giúp đỡ em suốt trình học tập thực đồ án tốt nghiệp Mặc dù cố gắng hết sức, xong chắn đồ án không tránh khỏi thiếu sót Em mong nhận đƣợc thơng cảm bảo tận tình q thầy bạn Cuối em xin kính chúc quý Thầy, Cơ, gia đình bạn bè dồi sức khỏe thành công nghiệp Xin chân thành cảm ơn! Ngƣời thực đề tài Lê hoàng ĐỒ ÁN TỐT NGHIỆP Contents CHƢƠNG I DẪN NHẬP 1.1 Đặt vấn đề 1.2 Lý chọn đề tài 1.3 Mục tiêu nghiên cứu 1.4 Nội dung nghiên cứu 1.5 Giới hạn 1.6 Bố cục đề tài CHƢƠNG II CƠ SỞ LÝ THUYẾT 2.1 2.1.1 Tổng quan công nghệ Bluetooth Đặc điểm công nghệ 2.1.2 Hoạt động 2.2 Module Bluetooth HC05 2.3 Tổng quan công nghệ GSM 2.3.1 Giới thiệu công nghệ 2.3.2 Sự phát triển công n 2.3.3 Giới thiệu SMS 2.3.3.1 Cấu trúc tin nhắn SMS 2.3.3.2 Ƣu điểm SMS 2.3.3.3 Tin nhắn SMS chuỗi/tin nhắn SMS dài 2.4 Module Sim 900 2.4.1 Giới thiệu Module Si 2.4.2 Đặc điểm module S 2.4.3 Khảo sát sơ đồ chân c 2.4.4 Khảo sát tập lệnh AT Command Module SIM 900 2.5 Tổng quan hệ điều hành Android 2.5 Phần mềm phần mềm lập trình Android Studio 2.6 Giới thiệu cảm biến khí Gas MQ2 2.7 Giới thiệu cảm biến siêu âm SRF-05 2.8 Giới thiệu RC servo ĐỒ ÁN TỐT NGHIỆP 2.9 Module giảm áp LM2596 2.10 Giới thiệu mạch điều khiển động L298 2.11Giới thiệu động DC giảm tốc 2.12 Khung xe robot 2.13 Pin Panasonic 18650 2.14 Bô ̣sac ̣ Panasonic 2.15 Giới thiệu board Arduino Mega 2560 CHƢƠNG III THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 3.1 3.1.1 3.1.2 3.1.3 3.2 Sơ đồkhối t ̣ hống Yêu cầu cua t ̣ hống ̉ Sơ đồ khối va chƣc năn ̀ ́ Hoạt động hệ thốn Thiết kế phần cứng 3.2.1 Khối cảm biến 3.2.2 Khối Bluetooth 3.2.3 Khối động 3.2.4 Khối SMS 3.2.5 Khối xử lý trung tâm 3.2.6 Khối nguồn 3.4 Thiết kế phần mềm cho khối tƣơng tác điện thoại Chƣơng IV KẾT QUẢ THỰC HIỆN 4.1 Kết phần cứng 4.2 Kết thực phần mềm CHƢƠNG V KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 5.1 Kết luận 5.2 Ƣu điểm hạn chế hệ thống 5.3 Khả ứng dụng thực tế đề tài 5.4 Hƣớng phát triển đề tài PHỤ LỤC TÀI LIỆU THAM KHẢO ĐỒ ÁN TỐT NGHIỆP DANH MỤC CÁC TỪ VIẾT TẮT PDA Personal Digital Assistants GMS Global System for Mobile Communication AT COMMANDS "AT" meaning 'attention' ETSI CDMA European Telecommunications Standards Institute Code Division Multiple Access TDMA Time Division Multiple Access TDM Time Division Multiplexing 2G Second Generration SMS Short Message Service SMSC Short Message Service Center GPRS General Packet Radio Service PAP Password Authentication Protocol PPP Point to Point Protocol 3GPP Third Generation Partnership Project TCP Transmission Control Protocol IP Internet Protocol ĐỒ ÁN TỐT NGHIỆP TĨM TẮT Theo dự đốn tƣơng lai, Robot tâm điểm cách mạng lớn sau Internet Robot đóng vai trị quan trọng để gia tăng suất xác dây chuyền tự động giảm thiểu can thiệp trực tiếp ngƣời môi trƣờng độc hại, ô nhiễm Trong đồ án tập trung nghiên cứu ứng dụng robot môi trƣờng có khí gas độc hại cho ngƣời thu thập liệu để cảnh báo cho ngƣời vận hành Để thực đề tài “Xe báo khí GAS điều khiểm điện thoại thơng minh” nhóm thực kết hợp board Arduino Mega 2560, module sim900, loại cảm biến, linh kiện, thiết bị điện tử khác nhằm tạo tiền đề cho việc xây dựng robot hồn chỉnh, có khả phục vụ cho đời sống ngƣời ĐỒ ÁN TỐT NGHIỆP { chaythang(); delay(300); } else { dung(); gocquay=180; myservo.write(gocquay); delay(1000); capnhat_kc(); if(kc_trai >= kc_vatcan) { quaytrai(); gocquay = 90; myservo.write(gocquay); delay(1000); } else { ĐỒ ÁN TỐT NGHIỆP gocquay = 0; myservo.write(gocquay); delay(1000); capnhat_kc(); if(kc_phai >= kc_vatcan) { quayphai(); gocquay = 90; myservo.write(gocquay); delay(1000); } else lui();\ delay(300); } } } void send_sms(){ if (started) { char pos; //địa nhớ sim (sim luu tối đa 40 sms nên max pos = 40) ĐỒ ÁN TỐT NGHIỆP pos = sms.IsSMSPresent(SMS_UNREAD); // kiểm tra tin nhắn chƣa đọc nhớ if ((int)pos) { //nêu có tin nhắn chƣa đọc if (sms.GetSMS(pos,number,smstext,160)) { Serial.print("So dien thoai: "); Serial.println(number); Serial.print("Noi dung tin nhan: "); Serial.println(smstext); if (strcmp(smstext,"AUTOMATIC") == 0) { //so sánh chuỗi Serial.println("Auto"); TT=1; sms.SendSMS("+841284822444", "DA CHUYEN SANG CHE DO AUTO"); } if (strcmp(smstext,"MEASURE") == 0) { if(CAMBIEN ) { Serial.println("bao dong cam bien"); sms.SendSMS("+841284822444", "BAO DONG CO KHI GA"); CAMBIEN = false ; } else ĐỒ ÁN TỐT NGHIỆP sms.SendSMS("+841284822444", "BAO DONG KHONG CO KHI GA"); } } } } } Chƣơng trình Android package bi.bluetooth; import android.annotation.TargetApi; import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorManager; import android.hardware.SensorEventListener; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.bluetooth.BluetoothSocket; import android.content.BroadcastReceiver; import android.content.Context; import android.content.IntentFilter; import android.content.Intent; import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ImageView; import android.widget.ListView; import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; ĐỒ ÁN TỐT NGHIỆP import android.telephony.SmsManager; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.ArrayList; import java.util.UUID; public class MainActivity extends Activity implements SensorEventListener{ //chú ý class để lắng nghe cảm biến ImageView bentrai; ImageView benphai; ImageView up; ImageView down; Button scanBlue; ListView danhsach; RelativeLayout manhinh1; //tạo đối tượng Broadcast Receiver BroadcastReceiver receiver=null; //khai báo biến Button chedoauto; Button dogas; float ax=0, ay=0, az=0; TextView textView1; //khai báo sensorManager để quản lý cảm biến private SensorManager sensorManager; //khai báo cảm biến vói tên Accelerometer private Sensor Accelerometer; boolean chophepgui = false; //khai báo thành phần để kết nối gửi nhận bluetooth BluetoothAdapter myBluetoothAdapter; BluetoothSocket btSocket; private OutputStream outStream = null; private InputStream inStream = null; private static final UUID MY_UUID = UUID fromString("00001101-0000-1000-8000-00805F9B34FB"); private ArrayAdapter BTArrayAdapter; ArrayList Adress; ĐỒ ÁN TỐT NGHIỆP ArrayList ID; String BtAddress = null; private static final String TAG = "HC-05"; Handler handler = new Handler(); @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); Accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); scanBlue=(Button)findViewById(R.id.scan); danhsach = (ListView)findViewById(R.id.list1); bentrai =(ImageView) findViewById(R.id.trai); benphai =(ImageView) findViewById(R.id.phai); up =(ImageView) findViewById(R.id.len); down =(ImageView) findViewById(R.id.xuong); textView1 = (TextView)findViewById(R.id.txtv_view1); manhinh1 =(RelativeLayout)findViewById(R.id.txtv_view); manhinh1.setBackgroundResource(R.drawable.xe); //ánh xạ biến UI control chedoauto = (Button)findViewById(R.id.button3); dogas=(Button)findViewById(R.id.button2); //************************************* //viết hàm xử lý nút chedoauto nhấn chedoauto.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v){ sendSMS("+841229646399", "AUTOMATIC"); Toast.makeText(MainActivity.this,"ĐÃ GỬI THÀNH CÔNG XIN CHỜ !",Toast.LENGTH_LONG).show(); } }); //viết hàm xử lý nút dogas nhấn dogas.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v){ sendSMS("+841229646399", "MEASURE"); Toast.makeText(MainActivity.this,"ĐÃ GỬI THÀNH CÔNG XIN CHỜ !",Toast.LENGTH_LONG).show(); } ĐỒ ÁN TỐT NGHIỆP }); //phần code sử lý tin nhắn phản hồi IntentFilter filter_sms=new IntentFilter("andoid.provider.Telephony.SMS_RECEIVED"); //tạo lắng nghe tin nhắn đến IntentFilter filter1=new IntentFilter(BluetoothDevice.ACTION_ACL_CONNECTED); receiver =new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { //hàm thực thi tin nhắn gởi đến //khai báo chuỗi có nội dung "pdus" để nhận tin nhắn String sms_extra="pdus"; //khai báo đóng gói bundle để nhận gói liệu Bundle bundle=intent.getExtras(); //đóng gói bundle trả tập tin nhắn gửi đén //một lúc Object[]smsArr=(Object[])bundle.get(sms_extra); String body=""; String address=""; //dùng vòng lặp để đọc tin nhắn for (int i=0;i