Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 111 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
111
Dung lượng
5,47 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 SKL 0 Tp Hồ Chí Minh, tháng 07/2017 an TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬTTHÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀ O TẠO CHẤT LƢỢNG CAO ĐỒ ÁN TỐT NGHIỆP SVTH: LÊ HOÀ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 an 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 Khí Gas Đ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ê ̣n đề tài: Sản phẩm: GIẢNG VIÊN HƢỚNG DẪN an 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) an 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) an 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 q trình thực đồ án tốt nghiệp mà cịn 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 an ĐỒ Á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 .7 1.5 Giới hạn 1.6 Bố cục đề tài CHƢƠNG II CƠ SỞ LÝ THUYẾT 2.1 Tổng quan công nghệ Bluetooth 2.1.1 Đặc điểm công nghệ Bluetooth 2.1.2 Hoạt động 10 2.2 Module Bluetooth HC05 10 2.3 Tổng quan công nghệ GSM 12 2.3.1 Giới thiệu công nghệ GSM 12 2.3.2 Sự phát triển công nghệ GSM Việt Nam 13 2.3.3 Giới thiệu SMS 14 2.3.3.1 Cấu trúc tin nhắn SMS .14 2.3.3.2 Ƣu điểm SMS 15 2.3.3.3 Tin nhắn SMS chuỗi/tin nhắn SMS dài 15 2.4 Module Sim 900 .16 2.4.1 Giới thiệu Module Sim900 16 2.4.2 Đặc điểm module SIM 900 17 2.4.3 Khảo sát sơ đồ chân chức chân Breakout SIM 900 19 2.4.4 Khảo sát tập lệnh AT Command Module SIM 900 21 2.5 Tổng quan hệ điều hành Android 23 2.5 Phần mềm phần mềm lập trình Android Studio 25 2.6 Giới thiệu cảm biến khí Gas MQ2 32 2.7 Giới thiệu cảm biến siêu âm SRF-05 33 2.8 Giới thiệu RC servo 36 an ĐỒ ÁN TỐT NGHIỆP 2.9 Module giảm áp LM2596 37 2.10 Giới thiệu mạch điều khiển động L298 38 2.11 Giới thiệu động DC giảm tốc 39 2.12 Khung xe robot 40 2.13 Pin Panasonic 18650 41 2.14 Bô ̣ sa ̣c Panasonic 42 2.15 Giới thiệu board Arduino Mega 2560 43 CHƢƠNG III THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG .49 3.1 Sơ đồ khố i ̣ thố ng .49 3.1.1 Yêu cầ u của ̣ thố ng 49 3.1.2 Sơ đồ khối và chƣ́c mỗi khố i 49 3.1.3 Hoạt động hệ thống 50 3.2 Thiết kế phần cứng 50 3.2.1 Khối cảm biến 50 3.2.2 Khối Bluetooth 52 3.2.3 Khối động 53 3.2.4 Khố i SMS 54 3.2.5 Khối xử lý trung tâm 55 3.2.6 Khố i nguồ n 61 3.4 Thiết kế phần mềm cho khối tƣơng tác điện thoại 61 Chƣơng IV KẾT QUẢ THỰC HIỆN 76 4.1 Kết phần cứng 76 4.2 Kết thực phần mềm 77 CHƢƠNG V KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 79 5.1 Kết luận 79 5.2 Ƣu điểm hạn chế hệ thống .79 5.3 Khả ứng dụng thực tế đề tài 80 5.4 Hƣớng phát triển đề tài 80 PHỤ LỤC 81 TÀI LIỆU THAM KHẢO 104 an ĐỒ Á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 an ĐỒ Á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 an ĐỒ Á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 { 92 an ĐỒ Á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) 93 an ĐỒ Á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 94 an ĐỒ Á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; 95 an ĐỒ Á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; 96 an ĐỒ Á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(); } 97 an ĐỒ Á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