วันนี้เราจะมาพูดถึงวิธีการใช้ อาร์ดูโน่เก็บรวบรวม ระบบรักษาความปลอดภัย . “ความปลอดภัย” ของเราจะป้องกันวงจรหนึ่งวงจรและควบคุมไซเรนหนึ่งตัว
สำหรับ Arduino นี่ไม่ใช่ปัญหา และดังที่คุณจะเห็นจากโค้ดโปรแกรมและไดอะแกรมอุปกรณ์ คุณสามารถเพิ่มจำนวนจุดเข้าใช้งานที่ได้รับการป้องกันและจำนวนอุปกรณ์แจ้งเตือนหรือบ่งชี้ได้อย่างง่ายดาย
ระบบรักษาความปลอดภัยสามารถใช้ป้องกันได้ เช่น วัตถุขนาดใหญ่(อาคารและสิ่งปลูกสร้าง) และ รายการเล็กๆ(กล่อง ตู้นิรภัย) และแม้แต่กระเป๋าพกพาและกระเป๋าเดินทาง ถึงแม้จะต้องระวังอย่างหลังแต่ถ้าติดตั้งระบบรักษาความปลอดภัย เช่น บนกระเป๋าเดินทางที่ตัดสินใจเดินทางแล้วระบบเตือนภัยดับที่สนามบินบางแห่ง ผมว่าคุณคงได้คุยกันจริงจังแล้ว บริการรักษาความปลอดภัยในพื้นที่ :-)
หลักการทำงานที่เรียบง่ายของอุปกรณ์มีดังนี้ (รูปที่ 1) หลังจากเปิดเครื่อง อุปกรณ์จะเข้าสู่โหมดการทำงานและรอการเปิดเครื่อง การติดอาวุธและการปลดอาวุธทำได้ด้วยปุ่มเดียว เพื่อเพิ่มความปลอดภัย ควรวางปุ่มนี้ไว้ในพื้นที่ป้องกัน (ตู้นิรภัยหรือกล่อง) ก่อนเปิดโหมดความปลอดภัยต้องเปิดประตูเล็กน้อย เมื่อคุณเปิดโหมดความปลอดภัย (กดปุ่ม) วงจรอิเล็กทรอนิกส์รอจนกว่าคุณจะปิดประตูห้อง (ประตูตู้นิรภัย ฝากล่อง ฯลฯ)
จะต้องติดตั้งลิมิตสวิตช์ทุกประเภทที่ประตู (หรือประตู) ซึ่งจะเพิ่มเติมในภายหลัง เมื่อปิด (หรือเปิด) สวิตช์จำกัดจะแจ้งให้อุปกรณ์ทราบว่าวงจรป้องกันปิดอยู่ และอุปกรณ์จะเข้าสู่โหมดความปลอดภัย ระบบจะแจ้งให้คุณทราบเมื่อเข้าสู่โหมดความปลอดภัยด้วยสัญญาณสั้น 2 สัญญาณ (เช่น สัญญาณกันขโมยรถยนต์) ในโหมดนี้อุปกรณ์จะ "จับ" การเปิดประตู หลังจากเปิดประตู ระบบจะรอสักครู่ (ซึ่งเป็นค่าที่ปรับได้ ประมาณสิบวินาทีสำหรับห้อง หนึ่งหรือสองวินาทีสำหรับกล่อง) เพื่อปิดโหมดความปลอดภัย หากไม่เกิดขึ้น ไซเรนจะเปิดขึ้น อัลกอริธึมและวงจรได้รับการออกแบบในลักษณะที่คุณสามารถปิดไซเรนได้โดยการถอดประกอบตัวเรือนทั้งหมดและปิดเครื่องเท่านั้น
อุปกรณ์ ระบบรักษาความปลอดภัยง่ายมาก (รูปที่ 2) ขึ้นอยู่กับกระดาน อาร์ดูโน่. ลิมิตสวิตช์เชื่อมต่อเหมือนปุ่มทั่วไปผ่านตัวต้านทานแบบดึงขึ้น ฉันจะอยู่แยกกันที่สวิตช์ท้าย มีทั้งแบบปิดปกติหรือเปิดตามปกติ คุณสามารถเปิดปุ่มปกติเป็นลิมิตสวิตช์ได้ เฉพาะระยะการเคลื่อนที่ของปุ่มปกติเท่านั้นที่มีขนาดใหญ่มาก ระยะฟันเฟืองของประตูมักจะมากกว่า ดังนั้นจึงจำเป็นต้องมีตัวดันสำหรับปุ่มและสปริงไว้เพื่อไม่ให้ปุ่มหักกับประตู ถ้าคุณไม่ขี้เกียจเกินไปก็สามารถไปที่ร้านและซื้อสวิตช์แม่เหล็ก (สวิตช์กก) (รูปที่ 3) ก็ไม่กลัวฝุ่นและสิ่งสกปรก
ลิมิตสวิตช์สำหรับสัญญาณเตือนรถก็เหมาะสมเช่นกัน (รูปที่ 4) ควรสังเกตว่าโปรแกรมถูกเขียนขึ้นสำหรับสวิตช์กก ที่ ประตูปิดผู้ติดต่อถูกปิด หากคุณใช้สวิตช์สัญญาณกันขโมยรถยนต์ เมื่อปิดประตูแล้วมักจะเปิดอยู่ และในตำแหน่งที่เหมาะสมในรหัสคุณจะต้องเปลี่ยน 0 เป็น 1 และในทางกลับกัน
ฉันแนะนำให้ใช้เสียงไซเรน PKI-1 ORIOLGA เป็นไซเรน การผลิตของเบลารุส(รูปที่ 5) แรงดันไฟจ่าย 9 - 15 V, กระแสไฟทำงาน 20 - 30 mA ทำให้สามารถใช้งานร่วมกับพลังงานแบตเตอรี่ได้ ในขณะเดียวกันก็ "สร้าง" 95 - 105 dB
ด้วยคุณสมบัติดังกล่าว แบตเตอรี่ Krona จะส่งเสียงเป็นเวลาหลายสิบนาที ฉันพบมันบนอินเทอร์เน็ตในราคา 110 รูเบิล ที่นั่นสวิตช์กกพร้อมแม่เหล็กมีราคาประมาณ 30 รูเบิล ซื้อสวิตช์สัญญาณเตือนรถที่อะไหล่รถยนต์ราคา 28 รูเบิล ทรานซิสเตอร์ KT315 สามารถใช้ตัวอักษรใดก็ได้หรือแทนที่ด้วยทรานซิสเตอร์ซิลิคอนกำลังต่ำที่ทันสมัยซึ่งมีการนำไฟฟ้าที่เหมาะสม หากระดับเสียงของไซเรนตัวเดียวไม่เพียงพอ (ใครจะรู้บางทีคุณอาจต้องการให้ได้ยินจากระยะไกลหลายกิโลเมตร) คุณสามารถเชื่อมต่อไซเรนหลายตัวแบบขนานหรือใช้ไซเรนที่ทรงพลังกว่าได้เฉพาะในกรณีนี้เท่านั้นที่ต้องเปลี่ยนทรานซิสเตอร์ด้วย อันที่ทรงพลังกว่า (เช่นชุดทรานซิสเตอร์ที่คุ้นเคย ULN2003) ฉันใช้ตัวเชื่อมต่อที่ง่ายที่สุดสำหรับอุปกรณ์เสียง/วิดีโอเป็นตัวเชื่อมต่อสำหรับเชื่อมต่อสวิตช์กกและไซเรน - ราคาในตลาดวิทยุคือ 5 รูเบิล สำหรับคู่รัก
ตัวอุปกรณ์สามารถติดกาวเข้าด้วยกันจากพลาสติกหรือไม้อัด หากวัตถุร้ายแรงได้รับการปกป้องก็ควรทำให้เป็นโลหะจะดีกว่า เพื่อเพิ่มความน่าเชื่อถือและความปลอดภัย แนะนำให้ใส่แบตเตอรี่หรือหม้อสะสมพลังงานไว้ในเคส
เพื่อให้รหัสโปรแกรมง่ายขึ้น ไม่ได้ใช้องค์ประกอบการประหยัดพลังงาน และแบตเตอรี่มีอายุการใช้งานไม่นาน คุณสามารถปรับโค้ดให้เหมาะสมหรือดีกว่านั้นคือสร้างใหม่อย่างรุนแรงโดยใช้การประมวลผลเหตุการณ์ขัดจังหวะและโหมดสลีป MK ในกรณีนี้ พลังงานจากแบตเตอรี่สี่เหลี่ยมสองก้อนที่เชื่อมต่อแบบอนุกรม (9 V) ควรจะเพียงพอสำหรับเวลาหลายเดือน
ตอนนี้รหัส
// ค่าคงที่
ปุ่ม const int = 12; // ปักหมุดที่ปุ่ม
ค่าคงที่ int gerkon = 3; // พินสำหรับสวิตช์กก
const int ไซเรนา = 2; // พินควบคุมไซเรน
const int นำ = 13; // พินตัวบ่งชี้
// ตัวแปร
int สถานะปุ่ม = 0; // สถานะของปุ่ม
int gerkonState = 0; // สถานะสวิตช์กก
อินท์ N = 0; // ปลดอาวุธตัวนับปุ่ม
การตั้งค่าเป็นโมฆะ () (
// ควบคุมไซเรนและตัวบ่งชี้ - เอาต์พุต
pinMode (ไซรีนา, เอาต์พุต);
pinMode (นำ, เอาต์พุต); // ปุ่มและสวิตช์กก - อินพุต
pinMode (เกอร์คอน, อินพุต);
pinMode(ปุ่ม, อินพุต);
}
เป็นโมฆะวน()
digitalWrite (นำ, สูง);
ในขณะที่(buttonState= =0)( // รอวนซ้ำจนกว่าเราจะกดปุ่ม
buttonState = digitalRead (ปุ่ม); // เพื่อเปลี่ยนเป็นโหมดความปลอดภัย
}
digitalWrite (นำ, ต่ำ);
สถานะปุ่ม = 0; // รีเซ็ตค่าปุ่ม
while(gerkonState= =0)( // วนซ้ำจนกว่าเราจะปิดประตู
}
ล่าช้า (500); // :-)
digitalWrite (ไซเรน่า, สูง); // รหัส
ล่าช้า(100); //ข้อบ่งชี้
digitalWrite (ไซเรน่า, ต่ำ); // เปิดใช้งาน
ล่าช้า(70); // โหมด
digitalWrite (ไซเรน่า, สูง); // ความปลอดภัย
ล่าช้า(100); //การแจ้งเตือน
digitalWrite (ไซเรน่า, ต่ำ); // เสียง
while(gerkonState= =1)( // รอให้ประตูเปิด
gerkonState = digitalRead (เกอร์คอน);
}
สำหรับ (int i=0; i<= 5; i++){ // 7,5 секунды на нажатие
buttonState = digitalRead (ปุ่ม); // ปุ่มลับ
if (buttonState = = HIGH) ( // ติดตามของเรา - ของคนอื่น
ยังไม่มีข้อความ=ยังไม่มี+1;
}
ล่าช้า (1500); // คุณสมบัติลับ :-)))
}
ถ้า (N > 0) ( // สิ่งที่สำคัญที่สุด
digitalWrite (ไซเรน่า, ต่ำ); //อย่าเปิดไซเรน
}
อื่น(
digitalWrite (ไซเรน่า, สูง); //หรือเปิดไซเรน
}
digitalWrite (นำ, สูง); // เปิดตัวบ่งชี้ N = 0;
สถานะปุ่ม = 0;
ล่าช้า (15,000); //เตือนหุ่นที่ชอบ
digitalWrite (นำ, ต่ำ); // กดปุ่มโดยไม่หยุดชะงัก (1,000)
สวัสดีผู้อ่านที่รัก! บทความวันนี้เป็นเรื่องเกี่ยวกับการสร้างระบบรักษาความปลอดภัยภายในบ้านแบบง่ายๆ โดยใช้ส่วนประกอบที่หาได้ง่าย อุปกรณ์ขนาดเล็กและราคาถูกนี้จะช่วยปกป้องบ้านของคุณจากผู้บุกรุกโดยใช้ Arduino, เซ็นเซอร์ตรวจจับความเคลื่อนไหว, จอแสดงผล และลำโพง อุปกรณ์สามารถใช้พลังงานจากแบตเตอรี่หรือพอร์ต USB ของคอมพิวเตอร์
เอาล่ะ มาเริ่มกันเลย!
มันทำงานอย่างไร?
ร่างกายของสัตว์เลือดอุ่นปล่อยรังสีอินฟราเรดซึ่งตามนุษย์มองไม่เห็น แต่สามารถตรวจจับได้โดยใช้เซ็นเซอร์ เซ็นเซอร์ดังกล่าวทำจากวัสดุที่สามารถโพลาไรซ์ได้เองเมื่อสัมผัสกับความร้อน ทำให้สามารถตรวจจับลักษณะของแหล่งความร้อนภายในระยะของเซ็นเซอร์ได้
สำหรับช่วงที่กว้างขึ้น จะใช้เลนส์ Fresnel ซึ่งจะรวบรวมรังสีอินฟราเรดจากทิศทางต่างๆ และมุ่งไปที่ตัวเซ็นเซอร์เอง
ภาพนี้แสดงให้เห็นว่าเลนส์บิดเบือนรังสีที่ตกกระทบอย่างไร
เป็นที่น่าสังเกตว่าหุ่นยนต์ที่ไม่มีชิ้นส่วนที่ร้อนเป็นพิเศษและชิ้นส่วนเลือดเย็นปล่อยรังสีอินฟราเรดน้อยมาก ดังนั้นเซ็นเซอร์อาจไม่ทำงานหากพนักงานของ Boston Dynamics หรือสัตว์เลื้อยคลานตัดสินใจล้อมคุณ
เมื่อมีการเปลี่ยนแปลงระดับรังสีอินฟราเรดในช่วงนี้จะถูกประมวลผลบน Arduino หลังจากนั้นสถานะจะแสดงบนจอ LCD ไฟ LED จะกระพริบและลำโพงจะส่งเสียงบี๊บ
เราต้องการอะไร?
- (หรือบอร์ดอื่นๆ)
- (16 ตัวอักษรในสองบรรทัด)
- ขั้วต่อหนึ่งตัวสำหรับเชื่อมต่อเม็ดมะยมกับ Arduino
- (ถึงแม้จะใช้ลำโพงธรรมดาได้ก็ตาม)
- สาย USB - สำหรับการเขียนโปรแกรมเท่านั้น ( ประมาณ การแปล:มันมาพร้อมกับ Arduino ของเราเสมอ!)
- คอมพิวเตอร์ (อีกครั้งสำหรับการเขียนและโหลดโปรแกรมเท่านั้น)
อย่างไรก็ตาม หากคุณไม่ต้องการซื้อชิ้นส่วนเหล่านี้ทั้งหมดแยกกัน เราขอแนะนำให้คุณใส่ใจกับชิ้นส่วนของเรา ตัวอย่างเช่น ทุกสิ่งที่คุณต้องการและอื่นๆ อีกมากมายอยู่ในชุดเริ่มต้นของเรา
มาเชื่อมต่อกัน!
การเชื่อมต่อเซ็นเซอร์ตรวจจับความเคลื่อนไหวนั้นง่ายมาก:
- เราเชื่อมต่อพิน Vcc กับ 5V Arduino
- เราเชื่อมต่อพิน Gnd เข้ากับ GND ของ Arduino
- เราเชื่อมต่อพิน OUT เข้ากับพินดิจิทัลหมายเลข 7 จาก Arduino
ตอนนี้มาเชื่อมต่อ LED และลำโพงกัน มันง่ายเหมือนกันที่นี่:
- เราเชื่อมต่อขาสั้น (ลบ) ของ LED เข้ากับกราวด์
- เราเชื่อมต่อขายาว (บวก) ของ LED เข้ากับเอาต์พุตหมายเลข 13 ของ Arduino
- สายลำโพงสีแดงไปยังเอาต์พุตหมายเลข 10
- สายสีดำ-ลงกราวด์
และตอนนี้ส่วนที่ยากคือการเชื่อมต่อจอแสดงผล LCD 1602 เข้ากับ Arduino เรามีจอแสดงผลที่ไม่มี I2C ดังนั้นเราจึงต้องการเอาต์พุต Arduino จำนวนมาก แต่ผลลัพธ์ที่ได้ก็คุ้มค่า แผนภาพแสดงไว้ด้านล่าง:
เราต้องการเพียงส่วนหนึ่งของวงจร (เราจะไม่ปรับคอนทราสต์ด้วยโพเทนชิออมิเตอร์) ดังนั้น คุณเพียงแต่ต้องทำสิ่งต่อไปนี้:
ตอนนี้คุณรู้วิธีเชื่อมต่อจอแสดงผล 1602 กับ Arduino UNO R3 แล้ว (รวมถึง Arduino เวอร์ชันใดก็ได้ตั้งแต่ Mini ถึง Mega)
การเขียนโปรแกรม
ถึงเวลาที่จะไปยังการเขียนโปรแกรม ด้านล่างนี้เป็นรหัสที่คุณต้องกรอกและหากคุณประกอบทุกอย่างถูกต้องแสดงว่าอุปกรณ์ก็พร้อม!
#รวม
เพื่อปกป้องบ้านของคุณจากแขกที่ไม่ได้รับเชิญทุกอย่าง ผู้คนมากขึ้นติดตั้งสัญญาณเตือนภัย พวกเขาอนุญาตให้มีการเตือนการบุกรุกเข้าไปในสถานที่อย่างทันท่วงที วันนี้ก็มี หลากหลายชนิดนาฬิกาปลุกแต่เข้า เมื่อเร็วๆ นี้ความนิยมของระบบเตือนภัย GSM เริ่มเติบโตขึ้นเนื่องจากช่วยให้คุณรับข้อมูลเกี่ยวกับการบุกรุกจากวัตถุในระยะใดก็ได้ สิ่งสำคัญคือเจ้าของมีโทรศัพท์อยู่กับเขาในขณะนั้นและโทรศัพท์นี้ออนไลน์อยู่ น่าเสียดายที่ระบบเหล่านี้ยังไม่ถูกเกินไปที่จะให้ความสำคัญกับพวกเขาโดยเฉพาะ แต่ปัจจุบันนี้คุณสามารถสร้างสัญญาณเตือนภัยระบบ GSM ง่ายๆ ได้ด้วยตัวเอง และบอร์ด Arduino ยอดนิยมจะช่วยในเรื่องนี้
โครงการนี้เป็นระบบรักษาความปลอดภัย (alarm) แจ้งเตือนผู้บุกรุกเข้ามาในบ้าน ระบบใช้เทคโนโลยี GSM
โมดูลตรวจจับการบุกรุกเชื่อมต่อกับบอร์ดไมโครคอนโทรลเลอร์ของระบบรักษาความปลอดภัยนี้ ซึ่งสามารถติดตั้งบนเซ็นเซอร์ IR หรือพรอกซิมิตี้เซนเซอร์อัลตราโซนิก เป็นต้น เมื่อได้รับสัญญาณจากโมดูลดังกล่าว ข้อความ SMS จะถูกส่งไปยังโทรศัพท์ของผู้ใช้เพื่อระบุว่าบ้านของพวกเขาถูกบุกรุก
รูปด้านล่างแสดงแผนภาพบล็อกของระบบรักษาความปลอดภัย
องค์ประกอบหลักของระบบคือบอร์ดไมโครคอนโทรลเลอร์ (เช่น Arduino Uno) และโมดูล GSM/GPRS SIM900A ระบบทั้งหมดสามารถจ่ายไฟจากแหล่งจ่ายไฟ 12V/2A เพียงตัวเดียว
ภาพด้านล่างแสดงให้เห็น แผนภูมิวงจรรวมระบบรักษาความปลอดภัยภายในบ้านด้วย GSM ที่ใช้ Arduino
การทำงานของระบบนั้นง่ายมากและไม่ต้องการคำอธิบายมากนัก เมื่อใช้แหล่งจ่ายไฟ ระบบจะเข้าสู่โหมดสแตนด์บาย อย่างไรก็ตาม เมื่อ J2 ลัดวงจร ข้อความเตือนจะถูกส่งไปยังหมายเลขที่ตั้งไว้ล่วงหน้าโดยอัตโนมัติ โทรศัพท์มือถือ. สามารถเชื่อมต่อเซนเซอร์ตรวจจับใดๆ เข้ากับขั้วต่ออินพุต J2 ได้ ก็ควรสังเกตว่า ระดับต่ำที่ขา 1 ของขั้วต่อ J2 ทำงานอยู่และเปิดระบบรักษาความปลอดภัย
นอกจากนี้ระบบยังได้เพิ่มความสามารถในการโทรออกด้วยการกดปุ่ม S2 การใช้ปุ่ม S3 คุณสามารถรีเซ็ตการโทรนี้ได้
ด้านล่างนี้เป็นโค้ดสำหรับ Arduino
// เชื่อมต่อพิน Tx เพื่อพิน D3 ของโมดูล GPS // เชื่อมต่อพิน Rx เพื่อพิน D4 ของโมดูล GPS // เชื่อมต่อสัญญาณส่งสัญญาณ SMS ไปที่พิน D7 (ระดับแอคทีฟต่ำ) // เชื่อมต่อสัญญาณ CALL เข้ากับพิน D8 (ระดับแอคทีฟต่ำ) // เชื่อมต่อสัญญาณรีเซ็ตการโทร END เพื่อปักหมุด D9 (ระดับแอคทีฟต่ำ) #include
ดังนั้นคุณสามารถสร้างระบบเตือนภัย GSM โดยใช้บอร์ด Arduino ด้วยมือของคุณเองได้อย่างง่ายดาย ในแง่ของต้นทุนระบบเตือนภัยดังกล่าวจะมีราคาถูกกว่าอะนาล็อกที่มีตราสินค้าในตลาดปัจจุบันอย่างแน่นอนและจะทำงานในลักษณะที่เกือบจะเหมือนกัน
ขอให้เป็นวันที่ดี :) วันนี้เราจะมาพูดถึงนาฬิกาปลุกกัน ตลาดบริการเต็มไปด้วยบริษัทและองค์กรที่ติดตั้งและบำรุงรักษาระบบรักษาความปลอดภัย บริษัทเหล่านี้เสนอผู้ซื้อ เลือกได้กว้างเตือน. อย่างไรก็ตามต้นทุนของพวกเขายังห่างไกลจากราคาถูก แต่คน ๆ หนึ่งควรทำอย่างไรถ้าเขาไม่มีเงินส่วนตัวมากมายที่สามารถใช้จ่ายได้ สัญญาณกันขโมย? ฉันคิดว่าข้อสรุปแนะนำตัวเอง - ทำเตือน ของพวกเขา มือ. บทความนี้จะแสดงตัวอย่างวิธีที่คุณสามารถสร้างระบบรักษาความปลอดภัยแบบเข้ารหัสของคุณเองโดยใช้บอร์ด Arduino uno และเซ็นเซอร์แม่เหล็กหลายตัว
สามารถปิดการใช้งานระบบได้โดยการป้อนรหัสผ่านจากปุ่มกดแล้วกดปุ่ม ' * '. หากคุณต้องการเปลี่ยนรหัสผ่านปัจจุบัน คุณสามารถทำได้โดยกดปุ่ม ' บี' และหากคุณต้องการข้ามหรือขัดจังหวะการดำเนินการ คุณสามารถทำได้โดยการกดปุ่ม ‘#’. ระบบมีเสียงกริ่งเพื่อเล่นเสียงต่างๆ เมื่อดำเนินการเฉพาะ
ระบบเปิดใช้งานโดยการกดปุ่ม 'A' ระบบให้เวลา 10 วินาทีในการออกจากห้อง หลังจากผ่านไป 10 วินาที สัญญาณเตือนจะเริ่มทำงาน จำนวนเซ็นเซอร์แม่เหล็กจะขึ้นอยู่กับความต้องการของคุณเอง โครงการนี้ประกอบด้วยเซ็นเซอร์ 3 ตัว (สำหรับหน้าต่าง 2 บานและประตู 1 บาน) เมื่อหน้าต่างเปิดขึ้น ระบบจะทำงานและสัญญาณเตือนที่มาจากออดจะถูกเปิดใช้งาน ระบบสามารถปิดการใช้งานได้โดยการป้อนรหัสผ่าน เมื่อประตูเปิดขึ้น สัญญาณเตือนภัยจะให้เวลาบุคคลนั้นเข้าสู่ 20 วินาทีเพื่อป้อนรหัสผ่าน ระบบใช้เซ็นเซอร์อัลตราโซนิคที่สามารถตรวจจับการเคลื่อนไหวได้
วิดีโอแสดงการทำงานของอุปกรณ์
งานฝีมือจัดทำขึ้นเพื่อวัตถุประสงค์ในการให้ข้อมูล/การศึกษา หากต้องการใช้ที่บ้านคุณจะต้องปรับเปลี่ยน ใส่ชุดควบคุมไว้ในกล่องโลหะและป้องกันสายไฟจากความเสียหายที่อาจเกิดขึ้น
เอาล่ะ!
ขั้นตอนที่ 1: เราต้องการอะไร?
- บอร์ด Arduino อูโน่;
- จอแสดงผล LCD คอนทราสต์สูง 16×2;
- แป้นพิมพ์ 4x4;
- โพเทนชิออมิเตอร์ 10~20kΩ;
- เซ็นเซอร์แม่เหล็ก 3 ตัว (หรือที่เรียกว่าสวิตช์กก);
- 3 ขั้วต่อสกรู 2 พิน;
- เซ็นเซอร์อัลตราโซนิก HC-SR04;
หากคุณต้องการสร้างระบบโดยไม่ใช้ Arduino คุณจะต้องมีสิ่งต่อไปนี้ด้วย:
- ตัวเชื่อมต่อ DIP สำหรับไมโครคอนโทรลเลอร์ atmega328 + atmega328;
- เครื่องสะท้อนเสียงควอตซ์ 16MHz;
- 2 ชิ้น เซรามิก 22pF, 2 ชิ้น ตัวเก็บประจุด้วยไฟฟ้า 0.22uF;
- 1 ชิ้น ตัวต้านทาน 10kOhm;
- แจ็คไฟกระแสตรง;
- กระดานขนมปัง
- แหล่งจ่ายไฟ 5V;
และกล่องเดียวก็บรรจุได้หมด!
เครื่องมือ:
- สิ่งที่ใช้ตัดกล่องพลาสติกด้วย
- ปืนกาวร้อน
- สว่าน/ไขควง
ขั้นตอนที่ 2: วงจรสัญญาณเตือน
แผนภาพการเชื่อมต่อค่อนข้างง่าย
ชี้แจงเล็กๆ น้อยๆ:
จอแอลซีดีคอนทราสต์สูง:
- Pin1 - Vdd ถึง GND;
- Pin2 - เทียบกับ 5V;
- Pin3 - Vo (ไปยังเทอร์มินัลกลางของโพเทนชิออมิเตอร์);
- Pin4 - RS ถึง Arduino พิน 8;
- Pin5 - RW ถึง GND;
- Pin6 - EN ถึง Arduino พิน 7;
- Pin11 - D4 ถึง Arduino พิน 6;
- Pin12 - D5 ถึง Arduino พิน 5;
- Pin13 - D6 ถึง Arduino พิน 4;
- Pin14 - D7 ถึง Arduino พิน 3;
- Pin15 - Vee (ไปทางขั้วขวาหรือซ้ายของโพเทนชิออมิเตอร์)
คีย์บอร์ด 4x4:
จากซ้ายไปขวา:
- Pin1 ถึง A5 พิน Arduino;
- Pin2 ถึง A4 พินของ Arduino;
- Pin3 ถึง A3 พินของ Arduino;
- Pin4 ถึง A2 พินของ Arduino;
- Pin5 ถึง Arduino พิน 13;
- Pin6 ถึง Arduino พิน 12;
- Pin7 ถึง Arduino พิน 11;
- Pin8 ถึง Arduino ขา 10
ขั้นตอนที่ 3: เฟิร์มแวร์
ขั้นตอนนี้จะแสดงโค้ดที่ใช้โดยบิวด์อิน !
ดาวน์โหลดปลั๊กอิน codebender คลิกที่ปุ่ม "Run" ใน Arduino และแฟลชบอร์ดของคุณด้วยโปรแกรมนี้ นั่นคือทั้งหมดที่ คุณเพิ่งตั้งโปรแกรม Arduino ของคุณ! หากคุณต้องการเปลี่ยนแปลงโค้ด ให้คลิกปุ่ม "แก้ไข"
หมายเหตุ: หากคุณจะไม่ใช้ Codebender IDE เพื่อตั้งโปรแกรมบอร์ด Arduino คุณจะต้องติดตั้งไลบรารีเพิ่มเติมใน Arduino IDE
ขั้นตอนที่ 4: สร้างแผงควบคุมของคุณเอง
หลังจากประกอบและทดสอบเรียบร้อยแล้ว โครงการใหม่บน ใช้ Arduinoไม่เป็นไร คุณสามารถเริ่มสร้างบอร์ดของคุณเองได้
เคล็ดลับบางประการสำหรับการดำเนินกิจการให้สำเร็จยิ่งขึ้น:
- ควรติดตั้งตัวต้านทาน 10kOhm ระหว่างพิน 1 (รีเซ็ต) และพิน 7 (Vcc) ของไมโครคอนโทรลเลอร์ Atmega328
- คริสตัล 16MHz ควรเชื่อมต่อกับพิน 9 และ 10 โดยมีเครื่องหมาย XTAL1 และ XTAL2
- เชื่อมต่อแต่ละลีดของเครื่องสะท้อนเสียงด้วยตัวเก็บประจุ 22pF เชื่อมต่อตัวเก็บประจุอิสระเข้ากับพิน 8 (GND) ของไมโครคอนโทรลเลอร์
- อย่าลืมเชื่อมต่อสายไฟ ATmega328 เส้นที่สองเข้ากับแหล่งจ่ายไฟ พิน 20-Vcc และ 22-GND
- ข้อมูลเพิ่มเติมเกี่ยวกับพินไมโครคอนโทรลเลอร์สามารถดูได้ในภาพที่สอง
- หากคุณวางแผนที่จะใช้แหล่งจ่ายไฟที่มีแรงดันไฟฟ้าสูงกว่า 6V คุณต้องใช้ตัวควบคุมเชิงเส้น LM7805 และตัวเก็บประจุด้วยไฟฟ้า 0.22uF สองตัว ซึ่งควรติดตั้งที่อินพุตและเอาต์พุตของตัวควบคุม มันเป็นสิ่งสำคัญ! อย่าจ่ายไฟเกิน 6V ให้กับบอร์ด!!! มิฉะนั้นไมโครคอนโทรลเลอร์ Atmega และจอ LCD ของคุณก็จะไหม้
ขั้นตอนที่ 5: วางวงจรไว้ในเคส
ดังที่คุณทราบฤดูใบไม้ผลินั้นมาพร้อมกับความรุนแรงทุกประเภทและตอนนี้ "อาการกำเริบ" หลักได้คลานออกมาจากรูบนถนนเพื่อปรับให้เข้ากับสิ่งที่ไม่ได้อยู่ในนั้น ซึ่งหมายความว่าหัวข้อการปกป้องทรัพย์สินของคุณมีความเกี่ยวข้องมากขึ้นกว่าที่เคย
ไซต์นี้มีบทวิจารณ์เกี่ยวกับโฮมเมดหลายรายการแล้ว แน่นอนว่ามันใช้งานได้ดี แต่ทุกคนก็มี คุณสมบัติทั่วไป- ขึ้นอยู่กับเต้าเสียบ หากนี่ไม่ใช่ปัญหากับสถานที่ที่มีไฟฟ้าจ่ายอยู่แล้ว แล้วสถานที่ซึ่งปลั๊กไฟอยู่ไกลหรือบริเวณโดยรอบไม่มีไฟฟ้าใช้โดยสิ้นเชิงล่ะ ฉันตัดสินใจใช้เส้นทางอื่น - เพื่อประกอบอุปกรณ์ที่มีอายุการใช้งานยาวนานซึ่งเรียบง่ายที่สุดเท่าที่จะเป็นไปได้และเป็นอิสระจากแหล่งจ่ายไฟหลักซึ่งจะเข้าสู่โหมดสลีปตลอดเวลาและเมื่อโจรบุกเข้ามาอุปกรณ์จะเริ่มทำงานและโทรหาโทรศัพท์ของเจ้าของ ส่งสัญญาณด้วยการโทรปลุกแบบง่ายๆ
ตรวจสอบรายการ
ซื้อแล้ว:1. เขียงหั่นขนมด้านเดียว 5x7 ซม.: เกติแน็ก- หรือ ไฟเบอร์กลาส
* - ไฟเบอร์กลาสมีคุณภาพดีกว่า getinax มาก
2. โมดูล Neoway M590 - พร้อมเสาอากาศบน PCB -
3. Arduino Pro Mini "RobotDyn" ATmega168PA 8MHz 3.3V -
4. บอร์ดควบคุมการจ่ายประจุลิเธียม -
ขุดขึ้นมาจากซากปรักหักพังของอารยธรรม:
1.
ชั้นวางบอร์ดตัดจากตัวเครื่อง - 6 ชิ้น
2.
แบตเตอรี่ลิเธียมแบบแบน 1300mAh
3.
ลวดเย็บกระดาษใช้สำหรับยึดสายเคเบิลเข้ากับผนัง
4.
ยางลบเครื่องเขียน
5.
ลวดทองแดงหนา 1.5 มม
6.
เคสเครื่องดนตรีจากตลาดวิทยุท้องถิ่น - 1.5$
7.
คู่ของไฟ LED สีที่แตกต่าง(นำมาจากเครื่องเล่น VHS)
8.
เสาอากาศและปุ่มพร้อมฝาปิด (นำมาจากเราเตอร์ Wi-Fi)
9.
เทอร์มินัลบล็อก 4 พิน (นำมาจากสวิตช์หรี่ไฟ)
10.
ขั้วต่อสายไฟ (นำมาจากเครื่องชาร์จเก่า 18650)
11.
ขั้วต่อ 6 พิน (นำมาจากไดรฟ์ดีวีดี)
12.
สามารถ(จากกาแฟเป็นต้น)
Arduino Pro Mini "RobotDyn" Atmega 168PA 3.3V 8MHz
ข้อมูลจำเพาะ:ไมโครคอนโทรลเลอร์: ATmega168PA
แรงดันไฟฟ้าขณะทำงานโดยตรง:.8 - 5.5 โวลต์
แรงดันไฟฟ้าขณะใช้งานผ่านโคลง LE33: 3.3 V หรือ 5 V (ขึ้นอยู่กับรุ่น)
อุณหภูมิในการทำงาน:-40°ซ… 105°ซ
แรงดันไฟฟ้าขาเข้า: 3.35-12V (รุ่น 3.3V) หรือ 5-12V (รุ่น 5V)
อินพุต/เอาต์พุตดิจิตอล: 14 (6 ช่องสามารถใช้เป็นเอาต์พุต PWM ได้: 3, 5, 6, 9, 10 และ 11)
อินพุตแบบอะนาล็อก: 6
จับเวลา-เคาน์เตอร์: 8 บิตสองตัวและ 16 บิตหนึ่งตัว
โหมดประหยัดพลังงาน: 6
กระแส DC ผ่านอินพุต/เอาต์พุต: 40 มิลลิแอมป์
หน่วยความจำแฟลช: 16 KB (2 ใช้สำหรับ bootloader)
แกะ: 1 กิโลไบต์
อีพรอม: 512 ไบต์
ทรัพยากรการบันทึก/การลบหน่วยความจำ: 10,000 แฟลช/100,000 EEPROM
ความถี่สัญญาณนาฬิกา: 8 MHz (รุ่น 3.3 V) หรือ 16 MHz (รุ่น 5 V)
เอสพีไอ: 10 (เอสเอส), 11 (MOSI), 12 (มิโซะ), 13 (SCK)
ไอ2ซี: A4 (SDA) และ A5 (SCL)
UART TTL: 0 (RX) และ 1 (เท็กซัส)
แผ่นข้อมูล:
ตัวเลือกนี้ตกอยู่กับ atmega นี้โดยบังเอิญ ในฟอรัมหนึ่งที่มีการพูดคุยถึงโครงการประหยัดพลังงาน ในความคิดเห็นมีคำแนะนำให้ใช้ atmega ครั้งที่ 168
อย่างไรก็ตามฉันต้องคนจรจัดเพื่อค้นหาบอร์ดดังกล่าวเนื่องจากบ่อยครั้งที่ลอตทั้งหมดเต็มไปด้วย 328 atmegs ที่ความถี่ 16 MHz ซึ่งทำงานจาก 5V สำหรับโครงการของฉัน ลักษณะดังกล่าวซ้ำซ้อนและไม่สะดวกตั้งแต่เริ่มต้น และการค้นหาก็ซับซ้อนมากขึ้น
เป็นผลให้ฉันเจอ Pro Mini รุ่น 3.3 โวลต์บน Atmega 168PA บน eBay และไม่ใช่แค่ภาษาจีนธรรมดา ๆ แต่อยู่ภายใต้แบรนด์ RobotDyn จากนักพัฒนาชาวรัสเซีย ใช่ ในตอนแรก เช่นเดียวกับคุณ ฉันก็มีความสงสัยเหมือนกัน แต่เปล่าประโยชน์ เมื่อประกอบโครงการแล้วและ AliExpress แนะนำการส่งสินค้าราคาถูกแบบบังคับ (หลังจากนั้นพัสดุเริ่มสูญหายบ่อยขึ้นมาก) ต่อมาฉันก็สั่ง Pro Mini Atmega168 ปกติ (ไม่มี PA) 3.3V 8MHz ฉันทดลองเล็กน้อยกับโหมดประหยัดพลังงานกับทั้งสองบอร์ด โดยฉายภาพร่างพิเศษในแต่ละอันที่ทำให้ไมโครคอนโทรลเลอร์เข้าสู่โหมดประหยัดพลังงานสูงสุด และนี่คือผลลัพธ์:
1) Arduino Pro Mini "RobotDyn": ~250µA
2) Arduino Pro Mini “ไม่มีชื่อ”:เมื่อจ่ายไฟให้กับตัวปรับแรงดันไฟฟ้า (พิน RAW) และ LED ถูกบัดกรี การสิ้นเปลืองกระแสไฟจะเป็นเช่นนั้น ~3.92mA
- อย่างที่คุณเข้าใจ ความแตกต่างในการใช้พลังงานนั้นเกือบ 16 เท่า ทั้งหมดนี้เป็นเพราะ Pro Mini ของ NoName ใช้ชุดค่าผสม Atmega168+ ซึ่ง MK เองกินเท่านั้น 20uAปัจจุบัน (ฉันตรวจสอบสิ่งนี้แยกกัน) ความตะกละที่เหลือทั้งหมดคิดเป็นของตัวแปลงแรงดันไฟฟ้าเชิงเส้น AMS1117 - เอกสารข้อมูลยืนยันสิ่งนี้เท่านั้น:
ในกรณีของบอร์ดจาก RobotDyn การรวมกันจะแตกต่างกันบ้าง - นี่คือ Atmega168PA+ - ที่นี่ใช้โคลง LDO ที่แตกต่างกันซึ่งลักษณะในแง่ของการประหยัดพลังงานกลายเป็นที่น่าพอใจมากขึ้น:
ฉันไม่ได้ถอดมันออกดังนั้นฉันจึงไม่สามารถบอกได้ว่า Atmega168PA กินกระแสไปเท่าไร รูปแบบบริสุทธิ์. ในกรณีนี้ฉันก็เพียงพอแล้ว ~250µAเมื่อขับเคลื่อนโดยโนเกีย แบตเตอรี่ลิเธียม. อย่างไรก็ตามหากคุณถอด AMS1117 ออกจากเมนบอร์ด NoName" ATmega168 ปกติในรูปแบบบริสุทธิ์ดังที่ฉันได้กล่าวไว้ข้างต้นจะสิ้นเปลือง 20uA.
ไฟ LED ที่มีแหล่งจ่ายไฟสามารถถูกกระแทกได้ด้วยของมีคม มันไม่ใช่ปัญหา เหล็กกันโคลงถูกบัดกรีด้วยเครื่องเป่าผม อย่างไรก็ตาม ไม่ใช่ทุกคนที่มีเครื่องเป่าผมและมีทักษะในการใช้งาน ดังนั้นตัวเลือกทั้งสองข้างต้นจึงมีสิทธิ์ที่จะมีอยู่
โมดูล Neoway M590E
ข้อมูลจำเพาะ:ความถี่: EGSM900/DCS1800 ดูอัลแบนด์ หรือ GSM850/1900 หรือควอดแบนด์
ความไว:-107dBm
กำลังส่งสูงสุด: EGSM900 คลาส 4(2 วัตต์), DCS1800 คลาส 1(1 วัตต์)
กระแสสูงสุด: 2เอ
ปัจจุบันทำงาน: 210mA
ปัจจุบันการนอนหลับ: 2.5mA
อุณหภูมิในการทำงาน:-40°ซ… +85°ซ
แรงดันไฟฟ้า: 3.3V…4.5V (แนะนำ 3.9V)
โปรโตคอล: GSM/GPRS Phase2/2+, TCP/IP, FTP, UDP ฯลฯ
อินเทอร์เน็ต:จีพีอาร์เอส คลาส 10
แผ่นข้อมูล:
โมดูล GSM ที่ถูกที่สุดที่สามารถพบได้ในตลาด มักใช้ บัดกรีไม่ชำนาญเสมอไป ด้วยมือคนจีนจากอุปกรณ์ ทำไมไม่กระฉับกระเฉงอยู่เสมอ? ใช่ ทั้งหมดนี้เกิดจากการขจัดบัดกรีด้วยเครื่องเป่าผม บ่อยครั้งที่ผู้คนได้รับโมดูลเหล่านี้โดยมีขั้วบวกและลบซึ่งเป็นสาเหตุหนึ่งที่ทำให้ไม่สามารถใช้งานได้ ดังนั้นขั้นตอนแรกคือการตรวจสอบหน้าสัมผัสไฟฟ้าว่ามีไฟฟ้าลัดวงจรหรือไม่
บันทึก.ในความคิดของฉันฉันต้องการทราบจุดสำคัญอีกจุดหนึ่งว่าโมดูลเหล่านี้สามารถมาพร้อมกับขั้วต่อโคแอกเซียลแบบกลมสำหรับเสาอากาศซึ่งช่วยให้คุณสามารถสั่งซื้อเสาอากาศที่รุนแรงยิ่งขึ้นแยกต่างหากและเชื่อมต่อกับโมดูลโดยไม่ต้องเต้นรำกับแทมบูรีน หรืออาจมาโดยไม่มีขั้วต่อนี้ นี่คือถ้าเราพูดถึงชุดที่ถูกที่สุด หากคุณไม่ต้องการพึ่งพาอุบัติเหตุที่มีความสุข มีชุดขั้วต่อนี้ที่มีราคาแพงกว่าเล็กน้อย + ชุดประกอบด้วยเสาอากาศภายนอกบนกระดานข้อความ
โมดูลนี้ไม่แน่นอนเช่นกันเมื่อพูดถึงแหล่งจ่ายไฟ เนื่องจากที่จุดสูงสุดจะใช้กระแสไฟสูงสุด 2A และดูเหมือนว่าไดโอดที่รวมอยู่ในชุดอุปกรณ์จะได้รับการออกแบบมาให้ลดแรงดันไฟฟ้าลงจาก 5V (ซึ่งเป็นเหตุว่าทำไมจึงระบุว่า 5V บนบอร์ดเอง ) ถึง 4.2V แต่ตัดสินโดย ตามคำร้องเรียนของผู้คน มันสร้างปัญหามากกว่าที่ควรจะเป็น
สมมติว่าคุณได้ประกอบโมดูลนี้แล้ว และแทนที่จะใช้ไดโอด จัมเปอร์จะถูกบัดกรีเข้าไป เนื่องจากเราจะไม่จ่ายแรงดันไฟฟ้า 5V ให้กับมัน แต่จะจ่ายไฟโดยตรงจากแบตเตอรี่ลิเธียมซึ่งอยู่ภายในขอบเขตที่อนุญาต ขีดจำกัดแรงดันไฟฟ้า 3.3-4.2V.
จำเป็นต้องเชื่อมต่อกับคอมพิวเตอร์และตรวจสอบฟังก์ชันการทำงาน ในกรณีนี้ควรซื้อล่วงหน้าสำหรับตัวคุณเอง - เราจะสื่อสารกับโมดูลและบอร์ด Arduino ผ่านอินเทอร์เฟซอนุกรม UART (USART)
การเชื่อมต่อแสดงอยู่ด้านล่างของภาพ (ฉันวาดให้ดีที่สุดเท่าที่จะทำได้):
โมเด็ม TX >>> ตัวแปลง RX
โมเด็ม RX<<< TX конвертера
แบตเตอรี่บวก - โมเด็มบวก
ค่าลบของแบตเตอรี่ลิเธียมจะรวมกับ GND ของโมเด็มและ GND ของตัวแปลง
ในการสตาร์ทโมเด็ม ให้ใช้พิน BOOT ผ่านตัวต้านทาน 4.7 kOhm ไปที่ GND
![](https://i0.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/24/e1ca54.png)
ในระหว่างนี้ ให้รันโปรแกรมบนคอมพิวเตอร์ของคุณ ให้ความสนใจกับการตั้งค่า:
1) เลือกพอร์ต COM ที่เชื่อมต่อตัวแปลง TTL ในกรณีของฉันคือ COM4 ของคุณอาจแตกต่างกัน
2) เลือกความเร็วการถ่ายโอนข้อมูล (มีความแตกต่างกันเล็กน้อยที่นี่เนื่องจากโมดูลสามารถกำหนดค่าได้สำหรับความเร็วที่แตกต่างกันส่วนใหญ่มักจะ 9600 บอดหรือ 115200 บอด ที่นี่คุณต้องเลือกโดยสังเกตเลือกความเร็วการเชื่อมต่อและส่งคำสั่ง AT หากมีรอยแตกเกิดขึ้น การตอบสนองจะตัดการเชื่อมต่อ เลือกความเร็วอื่นแล้วทำซ้ำคำสั่งไปเรื่อยๆ จนกว่าคำตอบจะเป็นปกติ)
3) เลือกความยาวของแพ็กเก็ต (ในกรณีนี้คือ 8 บิต), พาริตีบิตปิดใช้งาน (ไม่มี), บิตหยุด (1)
4) อย่าลืมทำเครื่องหมายในช่อง +CRจากนั้นอักขระขึ้นบรรทัดใหม่จะถูกเพิ่มโดยอัตโนมัติในแต่ละคำสั่งที่เราส่งไปยังโมดูลในตอนท้าย - โมดูลจะเข้าใจคำสั่งเฉพาะกับอักขระนี้ในตอนท้ายเท่านั้น
5) การเชื่อมต่อ ทุกอย่างชัดเจนที่นี่ คลิกแล้วเราจะทำงานกับโมดูลได้
![](https://i1.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/25/bc8b47.png)
หากคุณคลิกที่ “การเชื่อมต่อ” จากนั้นเริ่มโมดูลโดยใช้ BOOT ผ่านตัวต้านทาน 4.7K ลงกราวด์ ขั้นแรกเทอร์มินัลจะแสดงข้อความว่า “MODEM:STARTUP” จากนั้นผ่านไปครู่หนึ่ง ข้อความ “+PBREADY” หมายความว่าหมายเลขโทรศัพท์ถูกอ่านหนังสือแล้วแม้ว่าจะว่างเปล่าก็ตาม:
ภายใต้สปอยเลอร์นี้มีคำสั่ง AT พร้อมตัวอย่าง
เราพิมพ์คำสั่ง AT - เพื่อเป็นการตอบสนองโมดูลจะส่งคำสั่งของเราเนื่องจากเปิดใช้งานโหมด echo และตกลง:
ตรวจสอบสถานะของโมเด็มด้วยคำสั่ง AT+CPAS - การตอบสนองเป็นคำสั่งของเราอีกครั้ง +CPAS: 0 และตกลง
0 หมายความว่าโมดูลพร้อมใช้งาน แต่อาจมีหมายเลขอื่นๆ ขึ้นอยู่กับสถานการณ์ เช่น 3 - สายเรียกเข้า, 4 - ในโหมดการเชื่อมต่อ, 5 - โหมดสลีป ฉันไม่พบข้อมูลใด ๆ ใน 1 และ 2
การเปลี่ยนอัตราการถ่ายโอนข้อมูลผ่าน UART ทำได้ด้วยคำสั่ง AT+IPR=9600 - นี่คือถ้าคุณต้องการความเร็ว 9600 หากเป็นอย่างอื่น เช่น AT+IPR=19200 หรือ AT+IPR=115200
มาตรวจสอบสัญญาณเครือข่ายกัน AT+CSQ การตอบสนองจะมา +CSQ: 22.1 - ค่าก่อนจุดทศนิยมมีช่วง 0... 31 (115... 52 dBl) - นี่คือระดับสัญญาณ ยิ่งสูงยิ่งดี แต่ 99 หมายถึงไม่มีเลย ค่าหลังจุดทศนิยมคือคุณภาพของสัญญาณ 0... 7 - ในทางกลับกัน ยิ่งตัวเลขยิ่งน้อยก็ยิ่งดี
มาปิดการใช้งานโหมด echo โดยการส่งคำสั่ง ATE0 เพื่อไม่ให้คำสั่งที่ซ้ำกันรบกวน โหมดนี้จะเปิดอีกครั้งโดยใช้คำสั่ง ATE1
ดูเวอร์ชั่นเฟิร์มแวร์ AT+GETVERS
สามารถดูคำสั่งเหล่านี้และคำสั่งอื่นๆ ได้
การจัดตำแหน่งบอร์ด
หากการบัดกรี Pro Mini เข้ากับเขียงหั่นขนมนั้นไม่ใช่เรื่องยากดังนั้นด้วยโมดูล GSM สถานการณ์จึงค่อนข้างซับซ้อนกว่าเพราะ หวีสัมผัสของมันอยู่ที่ด้านเดียวเท่านั้นและถ้าคุณบัดกรีเพียงด้านเดียวอีกด้านหนึ่งของบอร์ดก็จะแขวนอยู่ในอากาศ จากนั้น อีกครั้ง ฉันต้องเจาะเพิ่มเติมด้วยตาอีก 3 รูใกล้กับมุมทั้งสามบนกระดาน จากนั้นพื้นที่รอบๆ หลุมแต่ละหลุมก็ถูกปิดบังไว้ เพื่อความสะดวกฉันวางลีดที่ถอดออกจากหวีไว้บนเขียงหั่นขนมไร้การบัดกรี (สีขาว) และติดตั้งบอร์ดโมดูล GSM ไว้บนนั้นและทำการบัดกรีตามปกติ:![](https://i0.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/26/253cbb.jpg)
ต่อมาฉันต้องเจาะรูที่ตัวอักษร "I" ซึ่งมีข้อความว่า "Made In China" ในกรณีของฉันจากขอบกระดาน
ปรากฎว่าผู้ติดต่อที่เพิ่มเข้ามาซึ่งโดยพื้นฐานแล้วคือ GND นั้นตั้งอยู่ถัดจาก GND ของบอร์ด Pro Mini และด้วยเหตุนี้จึงเป็นไปได้ที่จะเชื่อมต่อกราวด์ของโมดูล GSM และ Pro Mini ด้วยการบัดกรีหยดหนึ่ง (อันยาว ปักหมุดตรงกลางและปักหมุด Pro Mini ทางด้านขวา) - ฉันทำเครื่องหมายด้วยลูกศร แน่นอนว่ามันดูบิดเบี้ยวเล็กน้อย แต่ตอนนี้มันยึดแน่นแล้ว:
มีช่องว่างระหว่างบอร์ดเหลืออยู่ - ในนั้นฉันวางบอร์ดควบคุมการชาร์จลิเธียมที่มีขั้วต่อ microUSB ที่บัดกรีไว้ล่วงหน้าและสายบัดกรี
ผ้าพันคอแนบสนิทมาก และไฟ LED ที่ด้านข้างจะมองเห็นได้ชัดเจนผ่านรูเล็กๆ ในเคส
ชั้นวางบัตร
เพื่อที่จะติดตั้งบอร์ดไว้ภายในเคสอย่างแน่นหนา ฉันต้องใช้เวลาสองสามวันในการคิดว่าจะนำไปปฏิบัติได้อย่างไร ตัวเลือกที่มีกาวร้อนละลายไม่ได้รับการพิจารณาด้วยเหตุผลหลายประการ - อาจหลุดออก, เสียรูปและที่สำคัญที่สุดคือโครงสร้างจะแยกชิ้นส่วนได้ยากฉันได้ข้อสรุปว่าตัวเลือกที่ง่ายและถูกต้องที่สุดในที่นี้คือการใช้ขาตั้ง ซึ่งโดยธรรมชาติแล้วฉันไม่มี อย่างไรก็ตาม มีที่ชาร์จที่ไม่ทำงานอยู่สองสามอัน ซึ่งขาตั้งยาวอันหนึ่งที่มีเกลียวสำหรับสกรูเกลียวปล่อยถูกตัดออก ขาตั้งแต่ละอันถูกเลื่อยครึ่งหนึ่งและยื่นลงไปประมาณ 9.5 มม. - ที่ระดับความสูงนี้แบตเตอรี่ที่อยู่ใต้บอร์ดมีระยะขอบเพียงพอประมาณ 2 มม. - ทำเช่นนี้เพื่อไม่ให้หน้าสัมผัสบัดกรีของบอร์ดพร้อมปลายของพวกเขา สัมผัสมันและเพื่อให้สามารถวางชิ้นส่วนระหว่างโฟมเพื่อยึดได้
สำหรับการติดบอร์ดเข้ากับเคสโดยตรง ฉันตัดแถบสี่แถบจากกระป๋องกาแฟ เจาะรูที่ปลาย จากนั้นยึดเข้ากับสกรูตัวเดียวกับที่ขันเข้ากับชั้นวาง ดูในภาพด้านล่างว่ามีลักษณะอย่างไร
ขั้นตอนต่อไปคือการขันสกรูสองสามขาตั้งที่อีกด้านหนึ่งของบอร์ดนั่นคือด้านบน เพื่อว่าเมื่อปิดเคส ฝาครอบจะวางอยู่บนขาตั้งเหล่านี้เล็กน้อย ทำให้เกิดการยึดเพิ่มเติม หลังจากนั้นไม่นานฉันก็พบที่อยู่อาศัยจากวิทยุโฆษณาชวนเชื่อของสหภาพโซเวียต (หากพบก่อนหน้านี้ฉันจะเอาอัฒจันทร์ทั้งหมดไปจากที่นี่) ซึ่งฉันพบความสูงที่เหมาะสมไม่มากก็น้อย แต่ ก่อนอื่นฉันเจาะพวกมันตรงกลางด้วยสว่านภายใต้สกรูเกลียวปล่อย จากนั้นฉันก็เลื่อยมันออกและปิดท้ายด้วยไฟล์โดยเอาส่วนเกินออก ที่นี่ฉันเกิดความละเอียดอ่อนอย่างหนึ่ง - ในภาพคุณจะเห็นว่าขาตั้งสีขาวอันหนึ่งถูกขันเข้ากับบอร์ด getinaks จากขอบและอีกอันสีขาวนั้นถูกขันเข้ากับบอร์ดโมดูลโดยตรงเพราะ จากขอบด้านหนึ่งบอร์ดโมเด็มจะคลุมบอร์ดด้านล่างอย่างสมบูรณ์และจากขอบตรงข้าม - ในทางกลับกัน - ด้านล่างจะโผล่ออกมาแล้ว ในเวลาเดียวกันต้องเจาะรูเพิ่มเติมในกระดานทั้งสองเพื่อให้หัวสกรูสามารถผ่านได้อย่างอิสระ
และท้ายที่สุดก็ยังคงต้องแน่ใจว่าบอร์ดขนานกับตัวเครื่องเสมอ - ลวดเย็บกระดาษที่ใช้ยึดสายไฟและสายเคเบิลบนผนังเหมาะสำหรับงานนี้ ก่อนหน้านี้ฉันได้ถอดตะปูออกจากพวกมันแล้ว ขายึดยึดเกาะได้ดีกับบอร์ดโดยให้ด้านเว้าโดยไม่มีอุปกรณ์เพิ่มเติม สิ่งเดียวคือทางด้านขวาของซิมการ์ด ความกว้างของขายึดกลายเป็นมากเกินไป และฉันต้องขัดมันด้วย
รายละเอียดทั้งหมดได้รับการปรับด้วยตาและทดลอง ด้านล่างคือภาพถ่ายทั้งหมดที่กล่าวมาข้างต้น:
![](https://i1.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/25/3c8dca.jpg)
![](https://i0.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/25/48cbac.jpg)
ขั้วต่อ ไฟ LED ปุ่ม.
เนื่องจากหวีของฉันหมดฉันจึงต้องถอดขั้วต่อ 6 พินออกจากบอร์ดไดรฟ์ดีวีดีซึ่งฉันบัดกรีเข้ากับ Pro Mini แล้วนี่เพื่อความสะดวกในการกระพริบบอร์ด บริเวณใกล้เคียงฉันบัดกรีขั้วต่อแบบกลม (Nokiev 3.5 มม.) เพื่อชาร์จลิเธียม![](https://i2.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/26/b658a9.jpg)
ตัวเครื่องของขั้วต่อ 6 พินนั้นปิดท้ายด้วยไฟล์เล็กน้อยเนื่องจากขอบของมันยื่นออกมาเหนือตัวเครื่องเล็กน้อย ช่องเสียบชาร์จพอดีกับผนังเคสพอดี
ที่อีกด้านหนึ่งของบอร์ด ฉันบัดกรีปุ่มเพื่อรีบูทอุปกรณ์และไฟ LED สองดวงสำหรับการดีบักเฟิร์มแวร์ - LED สีแดงเชื่อมต่อกับโมดูล GSM, LED สีเขียวอันที่สองเชื่อมต่อกับพินที่ 10 ของ Pro Mini - มันคือ ให้ฉันแก้ไขข้อบกพร่องของโปรแกรมได้ง่ายขึ้น
การปรับเปลี่ยนแบตเตอรี่
แบตเตอรี่ Nokia แบบแบนจากโทรศัพท์ Nokia นั้นมีไม่น้อยไปกว่ารุ่น 18650 แต่หลายคนก็ปฏิเสธที่จะใช้เนื่องจากความไม่สะดวกในการเชื่อมต่อหน้าสัมผัสซึ่งฝังลึกเข้าไปในแบตเตอรี่นั่นเอง ไม่พึงประสงค์ที่จะบัดกรีพวกเขาดังนั้นจึงตัดสินใจใช้วิธีการที่เสนอโดยสิ่งเหล่านี้คือสร้างบล็อกการติดต่อด้วยตัวคุณเองจากยางลบในสำนักงานและลวดทองแดง (หนา 1.5 มม.)ก่อนอื่นฉันเจาะยางลบด้วยลวดสองเส้นที่มีปลายที่ปอกไว้ล่วงหน้าแล้วปรับให้เป็นหน้าสัมผัสของแบตเตอรี่เพื่อให้ระยะห่างระหว่างพวกเขาตรงกัน
ฉันงอปลายแล้วบัดกรีด้วยหัวแร้งแล้วดึงกลับเล็กน้อยโดยใช้ปลายยาวเพื่อให้หน้าสัมผัสที่ได้นั้นถูกฝังลงในยางลบ
![](https://i0.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/25/776b80.jpg)
![](https://i0.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/25/bb51e9.jpg)
กำลังลองใช้แบตเตอรี่:
คุณสามารถยึดบล็อกหน้าสัมผัสด้วยหนังยางหรือพันด้วยเทปพันสายไฟสีน้ำเงิน ซึ่งเป็นสิ่งที่ฉันทำในท้ายที่สุด
การประกอบ.
งานส่วนหลักเสร็จแล้ว เหลือเพียงการประกอบและบันทึกฉันใส่แผ่นโฟมยางไว้ระหว่างแบตเตอรี่กับบอร์ด เพื่อไม่ให้มันเคลื่อนเข้าไปในเคสในภายหลัง ฉันบัดกรีตัวเก็บประจุ 2200 µF เพิ่มเติมเพื่อจ่ายไฟให้กับโมดูล
![](https://i1.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/26/c1c1d6.jpg)
เมื่อเชื่อมต่อการชาร์จ:
กรอบ. แผงขั้วต่อภายนอก
เคสนี้มีจำหน่ายในตลาดวิทยุท้องถิ่นในราคาประมาณ 1.5 ดอลลาร์ หากแปลงเป็นดอลลาร์ ขนาด 95x60x25 มม. ซึ่งเกือบจะเท่ากับซองบุหรี่หนึ่งซอง ฉันเจาะรูหลายรูในนั้น ขั้นแรกสำหรับแผงขั้วต่อ 4 พิน นำมาจากสวิตช์หรี่ไฟที่ไม่ทำงานฉันปลดหน้าสัมผัสด้านนอกทั้งสองออกจากสลักเกลียวด้วยตัวเว้นระยะ รูเจาะสำหรับสลักเกลียวที่ยาวขึ้น ซึ่งจะยึดแผงขั้วต่อทั้งหมดไว้บนตัวเครื่อง แน่นอนว่าในตัวเคสเอง รูด้านนอกทั้งสองรูจะมีขนาดใหญ่และรูตรงกลางทั้งสองรูจะมีขนาดเล็กกว่า - พวกเขาจะมีหน้าสัมผัสเกลียวผ่านรูเหล่านั้น ซึ่งหนึ่งในนั้นเชื่อมต่อกับ VCC Pro Mini และหน้าสัมผัสที่สองเพื่อปักหมุด 2.
![](https://i2.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/26/3844e3.jpg)
แม้ว่าการเจาะรูจะเป็นงานง่าย ๆ เมื่อมองแวบแรก แต่ก็ยังใช้แรงงานไม่น้อย แต่ก็พลาดได้ง่ายมาก ดังนั้นฉันจึงเจาะรูที่มีเส้นผ่านศูนย์กลางเล็กกว่าก่อน จากนั้นจึงเจาะให้ใหญ่กว่านั้น
สำหรับปุ่มกด ฉันเลือกฝาปิดที่มีส่วนบนที่เว้าเล็กน้อยเพื่อให้เข้าถึงได้ง่ายด้วยไม้ขีดหรือคลิปหนีบกระดาษผ่านรูแคบๆ ในเคส
บอร์ดในกรณีที่มีสายแปลง USB-TTL ที่เชื่อมต่ออยู่:
เกี่ยวกับเสาอากาศ
ดังที่คุณอาจสังเกตเห็นตลอดการรีวิวว่าเสาอากาศมีการเปลี่ยนแปลงตลอดเวลาเมื่อฉันทดลองใช้เสาอากาศแบบโฮมเมดต่างๆ ในตอนแรก มีขั้วต่อโคแอกเซียลแบบกลมอยู่บนบอร์ดโมดูล แต่ครั้งที่ห้าที่ใช้เป็นเสาอากาศภายนอก มันก็หลุดออกจากกัน ดังนั้นโปรดจำไว้ว่ามันบอบบาง ด้วยเหตุนี้ ฉันจึงดึงเสาอากาศบน PCB ออกจากเราเตอร์เก่า และบัดกรีเข้ากับบอร์ดโมดูล เพราะ... มันจับตาข่ายได้ดีกว่าสปริงและลวดเล็กน้อย
เมื่อประกอบเข้ากับที่ชาร์จเรียบร้อยแล้วจะมีลักษณะดังนี้:
ทดสอบ. มันทำงานอย่างไร:
นอกจากการทดสอบกับเสาอากาศแล้ว ฉันยังได้ตรวจสอบว่าสัญญาณเตือนจะทำงานอย่างไรเมื่ออยู่ข้างนอก ที่อุณหภูมิ -15 น้ำค้างแข็ง ในการทำเช่นนี้ฉันเพียงแค่วางอวัยวะภายในทั้งหมดลงในภาชนะแล้วทิ้งไว้บนระเบียงข้ามคืนโดยสัญญาณเตือนภัยไม่เริ่มทำงานเหตุผลโดยทั่วไปก็ชัดเจน - ลิเธียมไม่ชอบน้ำค้างแข็ง สิ่งนี้ได้รับการยืนยันจากการทดสอบอื่น โดยที่ฉันทิ้งแบตเตอรี่ไว้ที่บ้าน และนำบอร์ดออกไปข้างนอกโดยใช้สายไฟยาวๆ แล้วปล่อยทิ้งไว้เช่นนั้นเป็นเวลาหนึ่งวันท่ามกลางน้ำค้างแข็งแบบเดียวกัน - มันทำงานราวกับว่าไม่มีอะไรเกิดขึ้น ในทางกลับกัน คงจะแปลกถ้านาฬิกาปลุกไม่ทำงานเพราะ... ในเอกสารข้อมูลสำหรับ Atmega สำหรับโมดูล และสำหรับควอตซ์ อุณหภูมิในการทำงานที่อนุญาตจะสูงถึง -40 องศา![](https://i2.wp.com/img.mysku.me/uploads/images/01/56/73/2017/04/26/ea85f3.jpg)
หลักการทำงานถูกจัดระเบียบโดยใช้อินเทอร์รัปต์ภายนอก โดยเริ่มแรกพิน 2 จะถูกปิดไปที่ VCC และด้วยเหตุนี้ โลจิคัล 1 จึงยังคงอยู่ที่พิน และตัวควบคุมอยู่ในโหมดสลีป ทันทีที่หน้าสัมผัสใช้งานไม่ได้และ 0 ปรากฏบนพิน 2 ไมโครคอนโทรลเลอร์จะตื่นขึ้น ลดพินที่ 3 (ซึ่ง BOOT ของโมเด็มเชื่อมต่อผ่านตัวต้านทาน) ลงกราวด์ - โมดูลเริ่มทำงาน MK จะสำรวจโมดูลเป็นระยะ เพื่อความพร้อมและเมื่อจับเครือข่ายได้ก็จะโทรเข้าเบอร์เจ้าของรหัสที่ระบุในรหัสทันที หลังจากปฏิเสธสาย อุปกรณ์จะปิดโดยไม่ส่งสายอีกต่อไป ซึ่งเป็นปัญหากับระบบสัญญาณเตือนภัยของจีนหลายระบบ
ข้อมูลเพิ่มเติม
#รวม
แผนภาพวงจร (ไม่มีแผงควบคุมการคายประจุ)
ข้อสรุปและความคิด แผน
มีการใช้สัญญาณเตือนที่เดชาฉันพอใจกับงานนี้อย่างไรก็ตามด้วยการศึกษา AVR เพิ่มเติมจึงมีแนวคิดมากขึ้นสำหรับการแก้ไขเพิ่มเติม Arduino ที่มี Wiring ภาษาหลอกทำให้ฉันหงุดหงิดจริงๆ เพราะ... ช่วงเวลาที่ไม่พึงประสงค์ถูกค้นพบในงานนี้ เมื่อฉันใช้ฟังก์ชันพอร์ต digitalWrite(); หรือ pinMode(); - ด้วยเหตุผลบางอย่างโมดูล GSM ค้างบ่อยมาก แต่มันก็คุ้มที่จะแทนที่ด้วยลูกเล่นอย่าง DDRB|=(1<เรื่องการประหยัดพลังงาน...
อุปกรณ์ที่ประกอบนั้นใช้งานได้สี่เดือนเต็มโดยไม่ต้องชาร์จและยังคงทำงานต่อไปแม้ว่าจะพูดว่า "สลีป" จะถูกต้องกว่าก็ตาม สามารถตรวจสอบได้เพียงแค่รีบูตผ่านปุ่มสีขาว ด้วยการใช้พลังงาน 250 μA (ผ่านโคลง LE33) และแบตเตอรี่ ~ 1430 mAh แม้ว่าจะโอเคเนื่องจากแบตเตอรี่มีความใหม่ แต่ลองปัดให้เป็น 1,000 mAh ปรากฎว่าอุปกรณ์สามารถสลีปได้ประมาณ 5.5 เดือนโดยไม่ต้องชาร์จใหม่ หากคุณยังคงถอดโคลงออกก็สามารถคูณเวลาทำงานได้อย่างปลอดภัย 10 เท่า แต่ในกรณีของฉัน ไม่จำเป็นเพราะคุณยังต้องใช้ยอดคงเหลือจากซิมการ์ดทุกๆ สามเดือน ขณะเดียวกันก็สามารถตรวจสอบและชาร์จอุปกรณ์ได้
ตัวอย่างการประหยัดพลังงานที่ให้ไว้ในรีวิวยังห่างไกลจากขีดจำกัดเพราะว่า เมื่อพิจารณาจากข้อมูลจากแผ่นข้อมูลคุณสามารถลดความถี่สัญญาณนาฬิกาของไมโครคอนโทรลเลอร์ (และทำได้โดยการติดตั้งฟิวส์) ลงเหลือ 1 MHz และหากคุณใช้แรงดันไฟฟ้า 1.8 V ปริมาณการใช้จะลดลงต่ำกว่าแถบ 1 μA ในโหมดแอคทีฟ . ดีมาก! แต่ถ้า MK ถูกโอเวอร์คล็อกจาก RC oscillator ภายใน ปัญหาอื่นก็จะปรากฏขึ้น - อากาศ UART จะอุดตันด้วยขยะและข้อผิดพลาดโดยเฉพาะอย่างยิ่งหากคอนโทรลเลอร์ถูกทำให้ร้อนหรือเย็นลง
เมื่อเสร็จสิ้น...
1)
สายไฟธรรมดาที่ติดตั้งให้แตกหักนั้นไม่สะดวกนัก ฉันวางแผนที่จะทดลองกับเซ็นเซอร์ฮอลล์และสวิตช์กกแม้ว่าพวกเขาจะพูดถึงอย่างหลังว่ามันไม่น่าเชื่อถือมากนักเพราะหน้าสัมผัสภายในสามารถเกาะติดได้
2)
เป็นการดีที่จะเพิ่มความสามารถในการเปลี่ยน "หมายเลขเจ้าของ" โดยไม่ต้องมีส่วนร่วมของคอมพิวเตอร์และกระพริบ คุณจะต้องทำงานกับ EEPROM
3)
ลองหยุดการทำงานของตัวจับเวลาจ้องจับผิด แต่ไม่ใช่เพียงเพื่อความอยากรู้อยากเห็น แต่เพื่อให้ไมโครคอนโทรลเลอร์ตื่นขึ้นเองเป็นระยะๆ วัดแรงดันไฟฟ้าของแบตเตอรี่ และส่งค่าผลลัพธ์ทาง SMS เพื่อทราบว่าแบตเตอรี่เหลือน้อยเพียงใด
4)
แผงโซลาร์เซลล์สามารถขจัดความจำเป็นในการชาร์จอุปกรณ์ได้อย่างสมบูรณ์ โดยเฉพาะอย่างยิ่งสำหรับแบตเตอรี่ความจุต่ำ
5)
ฉันต้องการซื้อแบตเตอรี่ LiFePo4 เป็นเวลานานซึ่งตามรีวิวสามารถทนต่อน้ำค้างแข็งได้ดี แต่ในขณะที่ฉันกำลังมองหาแบตเตอรี่ที่เหมาะสม ฤดูใบไม้ผลิก็มาถึงอย่างเงียบ ๆ แล้ว
6)
ทำงานเกี่ยวกับองค์ประกอบด้านสุนทรียภาพ
คุณควรซื้อ Pro Mini รุ่นใด
หากคุณไม่มีเครื่องเป่าผม ลองใช้ Pro Mini “RobotDyn” Atmega168PA 3.3V เลือก LED ที่มีอะไรบางอย่างแหลมคม และคุณมี ~250 µA
หากคุณมีเครื่องเป่าผม จากนั้นใช้บอร์ดใดๆ ประสานโคลงและ LED สำหรับแหล่งจ่ายไฟ - คุณจะได้รับกระแสไฟประมาณ 20 µA
เพียงเท่านี้ หวังว่ารีวิวจะน่าสนใจและมีประโยชน์
วางแผนที่จะซื้อ +174 เพิ่มในรายการโปรด ฉันชอบรีวิว +143 +278