สารบัญ:
- ขั้นตอนที่ 1: พลัง
- ขั้นตอนที่ 2: การสื่อสาร
- ขั้นตอนที่ 3: คำสั่ง AT
- ขั้นตอนที่ 4: การเขียนสคริปต์ Python
วีดีโอ: การใช้ Telit GE863 (โมดูล GSM-GPRS): 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:09
Telit GE863 เป็นโมดูล GSM-GPRS เช่น โทรศัพท์ที่ไม่มีหน้าจอหรือแป้นพิมพ์ และอาจใช้ GPS ได้ คำแนะนำนี้เป็นข้อมูลเกี่ยวกับวิธีเริ่มใช้งานหากคุณซื้อด้วยบอร์ดอินเทอร์เฟซ คุณสามารถซื้อโมดูล Telit พร้อมบอร์ดอินเทอร์เฟซได้ที่นี่: https://www.semiconductorstore.com/cart/pc/viewPrd.asp?idproduct=8445 และที่ 176 ดอลลาร์ ราคาค่อนข้างสูง แต่อาจเป็นสิ่งที่คุณต้องการ เอกสารประกอบสำหรับ Telit นั้นมีรายละเอียดและหนาแน่นมาก แต่เอกสารต่อไปนี้ให้ข้อมูลมากกว่าคำแนะนำนี้: คู่มือฮาร์ดแวร์ตระกูล Telit GE863[https://www.telit.co.it/data/uploads_EN/products/80000ST10025a_AT_Commands_Reference_Guide_r2 (1).pdf คู่มืออ้างอิงคำสั่ง AT][https://www.telit.co.it/data/uploads_EN/products//Easy\%20Script\%20in\%20Python\%20_r1.pdf การเขียนสคริปต์ Python สำหรับ Telit]
ขั้นตอนที่ 1: พลัง
Telit มีความสุขที่สุดด้วยพลังงาน 3.8v แต่คุณสามารถจ่ายไฟได้ทุกที่ระหว่าง 3.4-4.2 โวลต์ ตัวอย่างเช่น หากคุณมีแบตเตอรี่ลิเธียมโพลิเมอร์ 3.7 โวลต์อยู่แล้ว คุณสามารถเชื่อมต่อกับ VBATT เพื่อจ่ายไฟให้กับบอร์ดได้โดยตรง ฮาร์ดแวร์บน Telit เพื่อให้สามารถตรวจสอบได้ว่า Telit เปิดอยู่และเปิดอยู่ จะเป็นประโยชน์ในการบัดกรีที่ไฟ LED แสดงสถานะ (STAT LED) และตัวต้านทานซึ่งจะสอดคล้องกับไฟ LED ที่คุณเลือก แผ่นอิเล็กโทรดที่มีอยู่บนบอร์ดอินเตอร์เฟสทำขึ้นสำหรับแพ็คเกจ 0603 SMD ไฟ LED ทั้งสีแดงและสีเหลืองควรจะใช้ได้ ไฟ LED สีเขียวจะต้องใช้แรงดันไฟฟ้าที่สูงกว่าเล็กน้อย เพื่อให้สามารถเปิดและรีเซ็ต Telit ได้ คุณต้องประสานกับปุ่มกด DIP สองปุ่มที่ด้านใดด้านหนึ่งของ LED แสดงสถานะ ตัวอย่างเช่น คุณสามารถใช้ปุ่ม B3F100 https://www.instructables.com/files/deriv/F3D/KIOP/FOD7QJC6/F3DKIOPFOD7QJC6. MEDIUM.jpgBreakout board หากต้องการจ่ายไฟให้กับ Telit ด้วยแหล่งจ่ายไฟหรือแบตเตอรี่ใดๆ คุณจะต้องมีตัวควบคุมแรงดันไฟฟ้า/ วงจรเรียงกระแส ฯลฯ เพื่อจัดการกับสิ่งนี้ เรามีบอร์ดฝ่าวงล้อมสำหรับแหล่งจ่ายไฟและสำหรับการสื่อสารแบบอนุกรม ดูไฟล์อินทรีที่แนบมาด้วย smallest.brd และ.sch.https://www.instructables.com/files/deriv/FCB/7LU0/FOD7QJC3/FCB7LU0FOD7QJC3. MEDIUM.jpghttps://www.instructables.com/files/deriv/F4X /DUMQ/FOD7QJC5/F4XDUMQFOD7QJC5. MEDIUM.jpgแหล่งจ่ายไฟใดๆ ที่มีแจ็คขนาด 1/4 นิ้วระหว่าง 3 ถึง 20 โวลต์ จะทำงาน คุณยังสามารถต่อแบตเตอรี่ใดๆ กับขั้วต่อสายไฟได้ สามารถเปลี่ยนกำลังไฟได้โดยใช้ชอล์กสวิตช์ หลังจากนั้นจะผ่านวงจรเรียงกระแสแรงดันไฟฟ้า ตัวควบคุมแรงดันไฟฟ้าขนาดเล็ก (7805TV) คือการจ่ายไฟให้กับซีเรียลด้วยไฟ 5 โวลต์ที่ต้องการ ในขณะที่เราใช้ตัวควบคุมแรงดันไฟฟ้าแบบแปรผันที่ใหญ่กว่าเพื่อให้ Telit มี 3.8 โวลต์ คุณสามารถใช้ตัวควบคุม xed ที่เล็กกว่า ถูกกว่า ที่นี่ได้เช่นกัน หากคุณต้องการเชื่อมต่อสิ่งอื่น ๆ เช่น ไมโครโฟน ลำโพง หรือสิ่งอื่นใดกับโทรศัพท์เคลื่อนที่ คุณสามารถปรับเปลี่ยนบอร์ดฝ่าวงล้อมให้รองรับได้อย่างง่ายดาย มีบอร์ดรุ่นที่มีไมโครโฟนและแจ็คลำโพงรวมอยู่ที่นี่ด้วย
ขั้นตอนที่ 2: การสื่อสาร
คุณอาจคิดว่าคุณสามารถต่อสาย USB เข้ากับพอร์ต USB บนบอร์ดอินเทอร์เฟซได้ แต่นั่นคือสาย GPS และไม่สามารถใช้เพื่อสื่อสารกับ/ตั้งโปรแกรมบอร์ดของคุณได้ คุณสามารถใช้เส้น RX/TX ซึ่งอยู่บนพินที่ระบุว่า C103/TXD และ C104/RXD แทนได้ (ดู gure หมุดทางด้านซ้าย) สำหรับบอร์ดฝ่าวงล้อม คุณสามารถเชื่อมต่อสายไฟจากแจ็ค MTA ของคุณกับ GND, VBATT, TXD และ RXD ตามลำดับตามเข็มนาฬิกาจากด้านบนขวา หมุด VBATT และ GND ทั้งหมดเชื่อมต่อกันภายใน คุณจึงจำเป็นต้องเชื่อมต่อสายไฟในหมุดตัวใดตัวหนึ่งเท่านั้น เลือกสิ่งที่คุณต้องการแทรกส่วนหัวของคุณ RX/TX ผ่านสาย USB ในการสร้างสายเคเบิลที่คุณต้องการมีสายเคเบิล USB ตัวแปลงอนุกรม TTL-232R ซึ่งคุณใช้สายไฟเพียง 3 เส้นเท่านั้น ขั้วต่ออนุกรมบนบอร์ดฝ่าวงล้อมเชื่อมต่อดังนี้: (ว่าง สีดำ สีส้ม สีเหลือง)https://www.instructables.com/files/deriv/FZD/YLWN/FOD7QJC4/FZDYLWNFOD7QJC4. MEDIUM.jpgZ-term และ การตั้งค่า คุณต้องมีเทอร์มินัลการสื่อสารแบบอนุกรมบางประเภทเพื่อพูดคุยกับเทลิท เราใช้ Z-term ให้ใช้ฟรี คุณยังสามารถใช้ minicom ได้อีกด้วย Telit ใช้อัตราข้อมูล 115200, 8 บิต, ไม่มีความเท่าเทียมกัน การจับมือกันของฮาร์ดแวร์ควรเป็น o สำหรับการพูดคุยกับ telit ผ่านบอร์ดฝ่าวงล้อม หากคุณใช้ชุดประเมินผล ก็ควรเปิด handshake ของฮาร์ดแวร์ คุณสามารถตั้งค่าเหล่านี้ได้ใน Z-term ในส่วนการเชื่อมต่อ > การตั้งค่า https://www.instructables.com/files/deriv/FLV/4ZDK/FOD7QJC1/FLV4ZDKFOD7QJC1. MEDIUM.jpgการเปิดเครื่องจะทำให้สถานะไฟ LED กะพริบอย่างรวดเร็ว (ทุกๆ 2 วินาที) เมื่อค้นหาเครือข่ายและไม่เร็วนัก (4 วินาที)) หากพบ เมื่อคุณเชื่อมต่อบอร์ดและบอร์ดเปิดอยู่ คุณควรได้รับข้อความ ATE1 V1 OK มันจะตอบสนองต่อคำสั่งที่พิมพ์ AT ด้วย OK
ขั้นตอนที่ 3: คำสั่ง AT
คุณสามารถคุยกับ Telit ได้โดยใช้ชุดคำสั่ง Hayes พวกเขาสามารถสร้างหมายเลขโทร วางสาย ส่งข้อความ ตรวจสอบซิมการ์ดของคุณ ฯลฯ คำสั่ง AT เป็นมาตรฐานสำหรับอุปกรณ์มือถือจำนวนมาก และคุณควรจะสามารถ nd เอกสารจำนวนมากเกี่ยวกับพวกเขา คำสั่งบางคำสั่งที่เราใช้บ่อยแสดงอยู่ที่นี่ คำสั่ง AT ตามด้วย ? จะถามว่าปัจจุบันของบอร์ดเป็นอย่างไร คำสั่ง AT ตามด้วย =? จะให้ข้อโต้แย้งที่เป็นไปได้ทั้งหมดสำหรับการตั้งค่านั้น กำลังตรวจสอบซิม เครือข่าย ซิมการ์ดของคุณอาจต้องใช้รหัส PIN หรือสิ่งที่คล้ายกัน คุณสามารถตรวจสอบว่าพินนั้นใช้ได้หรือไม่ด้วยคำสั่ง CPIN AT+CPIN ควรบอกคุณว่า PIN นั้นใช้ได้หรือไม่ มิฉะนั้น คุณสามารถตั้งค่าได้โดยส่งสตริงพร้อมหมายเลข PIN คุณสามารถตรวจสอบว่าขณะนี้คุณอยู่บนเครือข่ายเซลล์ใดๆ ด้วยคำสั่ง AT+COPS หรือไม่ ซึ่งจะตอบสนองด้วยบางอย่างเช่น +COPS: 0, 0, "Cingular" ที่นี่ 0 แรกหมายความว่าคุณกำลังเข้าร่วมเครือข่ายโดยอัตโนมัติ และ 0 ที่สองคือรูปแบบที่คุณกำลังเชื่อมต่อ ในกรณีนี้คือตัวอักษรและตัวเลขแบบยาว คุณยังสามารถเลือกเครือข่ายอื่นได้ด้วยคำสั่ง COPS AT+COPS=? จะให้เครือข่ายที่มีอยู่แก่คุณ หากคุณไม่มีเสาอากาศติดอยู่กับ Telit คุณจะไม่สามารถเชื่อมต่อเครือข่ายมือถือใดๆ ได้ เราใช้หมายเลขชิ้นส่วน sparkfun CEL-08347 คุณอาจต้องเปลี่ยนการตั้งค่าวงดนตรี ทั้งนี้ขึ้นอยู่กับว่าคุณอยู่ที่ไหนในโลก แบนด์วิดท์ที่คุณสามารถตั้งค่าได้ถูกกำหนดโดยพารามิเตอร์ต่อไปนี้: 0 - GSM 900MHz + DCS 1800MHz 1 - GSM 900MHz + PCS 1900MHz (ยุโรป) 2 - GMS 850MHz + DCS 1800MHz (สหรัฐอเมริกา) 3 - GMS 850MHz + PCS 1900MHz เพื่อตั้งค่า วงดนตรีไปยังสหรัฐอเมริกา ใช้คำสั่ง AT#BND=2. SMSในการส่งข้อความ คุณสามารถใช้คำสั่ง AT+CMGS="+15555555555" ซึ่งระบุหมายเลขโทรศัพท์ของผู้รับได้ โดยค่าเริ่มต้น Telit จะอยู่ในโหมด PDU คุณสามารถเปลี่ยนได้โดยการตั้งค่ารูปแบบข้อความเป็นข้อความปกติด้วย AT+CMGF=1 ในกรณีนี้ คำสั่งบางอย่างจะต้องส่งโดยใช้ข้อความเช่นกัน เมื่อคุณระบุหมายเลขโทรศัพท์ของผู้รับแล้ว จะมีข้อความแจ้งให้คุณเขียนข้อความ หากต้องการส่ง ให้กด ctrl-z Telit ควรตอบกลับด้วยตกลง Telit อาจตอบสนองด้วยข้อผิดพลาด +CMS ซึ่งในกรณีนี้รหัสต่อไปนี้หมายถึงสิ่งต่อไปนี้: 0-127 GSM 04.11 ภาคผนวก E-2 ค่า 128-255 GSM 03.40 ส่วน 9.2.3.22 ค่า 300 โทรศัพท์ล้มเหลว 301 บริการ SMS ของโทรศัพท์ สงวนไว้ 302 ไม่อนุญาตให้ใช้งาน 303 ไม่รองรับการทำงาน 304 พารามิเตอร์โหมด PDU ไม่ถูกต้อง 305 พารามิเตอร์โหมดข้อความไม่ถูกต้อง 310 ไม่ได้ใส่ซิม 311 ต้องใช้ PIN ของซิม 312 ต้องใช้ PIN PH-SIM 313 ซิมขัดข้อง 314 ซิมไม่ว่าง 315 ซิมผิด 320 หน่วยความจำล้มเหลว 321 ดัชนีหน่วยความจำไม่ถูกต้อง 322 หน่วยความจำเต็ม 330 SMSC (ศูนย์บริการข้อความ) ไม่ทราบที่อยู่ 331 ไม่มีบริการเครือข่าย 332 เครือข่ายหมดเวลา 500 ข้อผิดพลาดที่ไม่ทราบสาเหตุ หากซิมไม่ว่าง โดยทั่วไปแล้วคุณสามารถลองใหม่อีกครั้งในภายหลัง ข้อผิดพลาด 302 มักหมายความว่าคุณกำลังส่งคำสั่งในโหมด PDU ขณะที่คุณอยู่ในโหมดข้อความหรือในทางกลับกัน
ขั้นตอนที่ 4: การเขียนสคริปต์ Python
Telit มีล่าม Python 1.5.2 ในตัวซึ่งได้รับการแก้ไขเล็กน้อย ออบเจ็กต์บางรายการได้รับการแบ็คพอร์ตจาก Python เวอร์ชันอนาคต เช่น สตริง คุณไม่จำเป็นต้องนำเข้าไลบรารีสตริง เพราะมันมีอยู่แล้ว คุณสามารถใช้คำสั่งเช่น line.split(", ") มีบางวิธีที่คุณสามารถใช้โครงสร้างและฟังก์ชันของคลาสได้ แต่ Telit นั้นจุกจิกมากเกี่ยวกับเรื่องนี้ มีสภาพแวดล้อมการจำลอง windows ที่คุณสามารถรับได้จากคน Telit แต่ดูเหมือนว่าจะใช้งานได้เพียงครึ่งเดียว ไม่มีเอาต์พุตเทอร์มินัลจากโปรแกรม python ของคุณจะถูกพิมพ์ไปยังเทอร์มินัลเว้นแต่คุณจะระบุเส้นทางที่ชัดเจน คุณสามารถทำได้โดยใช้สคริปต์ sout.py ที่แนบมา หากคุณนำเข้าครั้งแรกในไฟล์ทั้งหมดของคุณ เอาต์พุตเทอร์มินัลทั้งหมดจะถูกนำหน้าด้วย stderr: ไม่ใช่ทุกสิ่งที่จะต้องผิดพลาด ไลบรารีในตัว Telit มีไลบรารี Python ในตัวที่คุณสามารถนำเข้าได้ SER เป็นอินเทอร์เฟซระหว่าง Python และพอร์ตอนุกรมภายใน GPIO เป็นส่วนต่อประสานระหว่าง Python และพิน GPIO, GPS สำหรับรวบรวมข้อมูล GPS และ MDM สำหรับส่งคำสั่ง AT ไปยัง Telit สำหรับข้อมูลเฉพาะเพิ่มเติม คุณควรตรวจสอบการอ้างอิง Telit Python Easy Script ตัวอย่างวิธีการใช้ไลบรารี MDM อยู่ในสคริปต์ sms.py ที่แสดงข้อความทั้งหมดในซิมการ์ดของคุณ การอัปโหลดสคริปต์ไปยังบอร์ด สคริปต์ใดๆ ที่คุณอัปโหลดจำเป็นต้องบันทึกในรูปแบบ DOS ที่มีส่วนท้ายบรรทัด CRLF ไม่เช่นนั้น Telit จะไม่สามารถแยกวิเคราะห์ได้ ใน VI คุณสามารถทำเช่นนี้ได้ด้วยคำสั่ง:set ff=dos หรือในเมนูของโปรแกรมแก้ไขข้อความอื่นๆ ในการอัปโหลดสคริปต์ คุณต้องทราบขนาดที่แน่นอนเป็นไบต์ จากนั้นสคริปต์สามารถอัปโหลดโดยใช้คำสั่ง AT#WSCRIPT="name.py", 901 โดยที่ 901 คือขนาดที่แน่นอนเป็นไบต์ คุณจะได้รับ >> prompt ซึ่งจะเปิดใช้งานการส่งข้อความ (ใน z-term: le > send text) Telit ควรตอบกลับด้วย OK ถ้าสิ่งนี้ใช้ได้ผล สคริปต์ทั้งหมดที่อยู่ในบอร์ดสามารถแสดงรายการด้วย AT#LSCRIPT ซึ่งจะแสดงรายการ.pyo les ที่คอมไพล์แล้ว ให้คุณตรวจสอบว่าไลบรารีที่คอมไพล์ของคุณมีอยู่หรือไม่ คุณระบุสคริปต์หลักด้วยคำสั่ง AT#ESCRIPT="name.py" คุณสามารถถามได้ว่าสคริปต์หลักของ AT#ESCRIPT คืออะไร สคริปต์จะทำงานเมื่อบูต หรือคุณสามารถดำเนินการได้ทันทีด้วยคำสั่ง AT#EXECSCR ในบางครั้ง ด้วยเหตุผลที่ยังไม่ชัดเจนสำหรับเรา ไลบรารีที่นำเข้าได้จะไม่คอมไพล์ เว้นแต่คุณจะตั้งค่าเป็น escript ก่อนดำเนินการเป็น mains จะคอมไพล์ จากนั้นอ็อบเจกต์ไฟล์จะถูกใช้ในอนาคต หมายเหตุเกี่ยวกับความเร็วและการรวบรวมล่าม Python บน Telit ช้ามาก ช้ามาก หากคุณแบ่งโค้ดของคุณออกเป็นสคริปต์เดี่ยวๆ ไฟล์ Python les (.pyo) ที่คอมไพล์แล้วจะถูกบันทึกและทำให้โค้ดของคุณรันเร็วขึ้นอย่างเห็นได้ชัด ในความเป็นจริง คุณต้องการให้สคริปต์หลักของคุณสั้นที่สุดเท่าที่จะเป็นไปได้ โดยเข้าถึงฟังก์ชันจากไลบรารีที่คอมไพล์ล่วงหน้า หากคุณเขียนไลบรารีจำลองแทนที่สำหรับไลบรารีในตัวบน Telit (MDM, SER ฯลฯ) บนคอมพิวเตอร์ของคุณ คุณสามารถคอมไพล์ Python บนคอมพิวเตอร์ของคุณและโอนไฟล์.pyc (เปลี่ยนชื่อเป็น.pyo) ไปยัง Telit เพื่อประหยัดเวลา
แนะนำ:
โมดูล SIM900A 2G + ซิมการ์ดโฮโลแกรม = การรวมกันที่ชนะในหมวด "สิ่งสกปรกราคาถูก"?: 6 ขั้นตอน
โมดูล SIM900A 2G + ซิมการ์ดโฮโลแกรม = การรวมกันที่ชนะในหมวด "dirt Cheap"?: IoT คำศัพท์ของทศวรรษนี้ บางครั้งก็เข้ามาในจิตใจของผู้คนที่คิดว่าตัวเองต่อต้านแฟชั่น โดยมีฉันอยู่ท่ามกลางพวกเขา อยู่มาวันหนึ่งฉันกำลังเรียกดู อินเตอร์เน็ตและเห็นบริษัทที่ไม่เคยได้ยินชื่อมาก่อน (โฮโลแกรม) แจกซิมการ์ด
โมดูล HC-05 (บลูทูธ) สำหรับระบบอัตโนมัติภายในบ้านขั้นพื้นฐาน: 3 ขั้นตอน
โมดูล HC-05 (บลูทูธ) สำหรับ Home-automation Basic: ในโครงการที่แล้ว ฉันควบคุม LED โดยใช้ปุ่มกด แต่ในโครงการนี้ ฉันได้แทนที่ PUSH BUTTON ด้วยโมดูล HC-05 ฉันขอแนะนำอย่างยิ่งให้ผ่านโครงการเหล่านี้มาก่อน ต่อด้วยโครงการนี้ คุณจะได้รับรายละเอียดทั้งหมดใ
กำลังส่ง SMS ด้วย Arduino -- โมดูล TC35 GSM: 5 ขั้นตอน
กำลังส่ง SMS ด้วย Arduino || โมดูล TC35 GSM: ในโครงการขนาดเล็กนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีใช้โมดูล TC35 GSM อย่างถูกต้อง และวิธีใช้งานกับ Arduino Uno เพื่อส่ง SMS ด้วย
ระบบเตือนภัย GSM ส่วนบุคคล - โมดูล SMS SIM900A, Arduino: 3 ขั้นตอน
ระบบเตือนภัย GSM ส่วนบุคคล - โมดูล SMS SIM900A, Arduino: สองสามครั้งต่อเดือนฉันพาป้าเก่าของฉันไปที่คริสตจักรท้องถิ่น บางครั้งการรับใช้ในโบสถ์ใช้เวลานานกว่านั้นมาก และเวลาสิ้นสุดก็คาดเดาได้ยาก ดังนั้นหลังจากรอประมาณครึ่งชั่วโมง ฉันคิดว่ามันคงจะดีกว่าถ้าเธอสามารถเตือนฉันว่าบริการมี
Arduino Christmas Frame & โมดูล A6 GSM: 4 ขั้นตอน (พร้อมรูปภาพ)
Arduino Christmas Frame & A6 GSM Module: เฟรมทำขึ้นเพื่อความสนุกสนานในช่วงคริสต์มาสเท่านั้น :) รับชมภาพยนตร์ YouTube เพื่อชมการสาธิต โมดูล AI A6 GSM รับ SMS และส่งไปยัง Arduino Uno ในฐานะมาสเตอร์ (บัส i2c) Arduino Uno ส่งข้อมูลบัส i2c ไปยัง Arduino Nano เพื่อเริ่มย้ายเซอร์โวและไปที่