Mục lục:

Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino: 10 bước (có hình ảnh)
Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino: 10 bước (có hình ảnh)

Video: Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino: 10 bước (có hình ảnh)

Video: Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino: 10 bước (có hình ảnh)
Video: #9 SIM7000 LTE CAT-M/NB-IoT Shield Demo 2024, Tháng bảy
Anonim
Image
Image
Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino
Botletics LTE CAT-M / NB-IoT + GPS Shield cho Arduino

Tổng quat

Tấm chắn Botletics SIM7000 LTE CAT-M / NB-IoT sử dụng công nghệ LTE CAT-M và NB-IoT mới và cũng có GNSS tích hợp (các tiêu chuẩn GPS, GLONASS và BeiDou / Compass, Galileo, QZSS) để theo dõi vị trí. Có nhiều mô-đun dòng SIM7000 phục vụ cho các khu vực khác nhau trên khắp thế giới và may mắn là SIMCOM đã làm cho nó thực sự dễ dàng xác định: SIM7000A (Mỹ), SIM7000E (Châu Âu), SIM7000C (Trung Quốc) và SIM7000G (Toàn cầu). Hiện tại NB-IoT được hỗ trợ ở nhiều quốc gia trên thế giới nhưng tiếc là không có ở Mỹ, mặc dù nó được lên kế hoạch thương mại hóa trong tương lai gần (2019) và bất kể, chúng ta vẫn có thể sử dụng các chức năng LTE CAT-M!

Để sử dụng tấm chắn, chỉ cần cắm tấm chắn vào Arduino, lắp thẻ SIM tương thích, gắn ăng-ten LTE / GPS và bạn đã sẵn sàng!

Giới thiệu

Với sự xuất hiện của các thiết bị IoT năng lượng thấp với kết nối di động và việc loại bỏ 2G (chỉ có T-mobile hỗ trợ 2G / GSM cho đến năm 2020), mọi thứ đang chuyển sang LTE và điều này khiến nhiều người phải tranh giành để tìm ra các giải pháp tốt hơn. Tuy nhiên, điều này cũng khiến nhiều người có sở thích phải đối mặt với công nghệ 2G kế thừa như các mô-đun dòng SIM800 của SIMCOM. Mặc dù các mô-đun 2G và 3G này là một điểm khởi đầu tuyệt vời, nhưng đã đến lúc phải tiếp tục và SIMCOM gần đây đã công bố mô-đun SIM7000A LTE CAT-M mới của họ tại hội nghị của nhà phát triển. Thật thú vị!:)

Điều tuyệt vời của tất cả những điều này là SIMCOM đã làm cho việc chuyển đổi từ mô-đun 2G và 3G sang mô-đun mới này trở nên vô cùng dễ dàng! Dòng SIM7000 sử dụng nhiều lệnh AT giống nhau giúp giảm thiểu việc phát triển phần mềm hàng dặm! Ngoài ra, Adafruit đã có một thư viện FONA tuyệt vời trên Github có thể được sử dụng để giới thiệu SIM7000 mới này vào nhóm!

LTE CAT-M là gì?

LTE CAT-M1 được coi là công nghệ LTE thế hệ thứ hai, có công suất thấp hơn và phù hợp hơn với các thiết bị IoT. Công nghệ NarrowBand IoT (NB-IoT) hoặc "CAT-M2" là công nghệ Mạng diện rộng năng lượng thấp (LPWAN) được thiết kế đặc biệt cho các thiết bị IoT công suất thấp. Nó là một công nghệ tương đối mới, không may là chưa có sẵn ở Mỹ, mặc dù các công ty đang nghiên cứu thử nghiệm và xây dựng cơ sở hạ tầng. Đối với các thiết bị IoT sử dụng công nghệ vô tuyến (RF), có một số điều cần lưu ý: Điện năng tiêu thụ gửi nhiều dữ liệu (như điện thoại của bạn, có thể phát trực tuyến YouTube!) nhưng điều này cũng có nghĩa là nó rất ngốn điện. Việc tăng phạm vi ("khu vực" của mạng) cũng làm tăng mức tiêu thụ điện năng. Trong trường hợp của NB-IoT, cắt giảm băng thông có nghĩa là bạn sẽ không thể gửi nhiều dữ liệu, nhưng đối với các thiết bị IoT, việc ghi từng phần dữ liệu lên đám mây thì điều này là hoàn hảo! Do đó, công nghệ băng thông "hẹp", lý tưởng cho các thiết bị tiêu thụ điện năng thấp với số lượng ít dữ liệu nhưng vẫn có phạm vi dài (diện rộng)!

Botletics SIM7000 Shield cho Arduino

Tấm chắn mà tôi đã thiết kế sử dụng SIM7000-series để cho phép người dùng có công nghệ LTE CAT-M và GPS cực kỳ tiết kiệm năng lượng! Tấm chắn cũng có cảm biến nhiệt độ MCP9808 I2C, tuyệt vời để ít nhất là đo một thứ gì đó và gửi nó qua kết nối di động.

  • Lá chắn là mã nguồn mở! Yay!
  • Tất cả tài liệu (tệp EAGLE PCB, mã Arduino và wiki chi tiết) có thể được tìm thấy tại đây trên Github.
  • Để xem phiên bản SIM7000 nào phù hợp nhất với bạn, vui lòng xem trang wiki này.
  • Có thể mua bộ khiên Botletics SIM7000 tại đây trên Amazon.com

Bước 1: Thu thập các bộ phận

Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận
Thu thập các bộ phận

Dưới đây là danh sách tất cả các bộ phận bạn sẽ cần:

  • Arduino hoặc bảng tương thích với Arduino - Arduino Uno là lựa chọn phổ biến nhất cho việc này! Nếu bạn muốn sử dụng lá chắn LTE thực sự như một "lá chắn", bạn nên sử dụng bảng Arduino với hệ số dạng Arduino. Nói rõ ràng, bạn cũng sẽ cần một cáp lập trình để tải các bản phác thảo Arduino lên bảng! Nếu bạn không sử dụng bảng Arduino-form-factor, điều đó cũng tốt! Có thông tin về những kết nối cần thực hiện trong trang wiki này và các bộ vi điều khiển khác nhau đã được thử nghiệm, bao gồm ESP8266, ESP32, ATmega32u4, ATmega2560 và ATSAMD21.
  • Botletics SIM7000 Shield Kit - Tấm chắn đi kèm với ăng-ten LTE / GPS uFL kép và các tiêu đề nữ xếp chồng lên nhau! Bo mạch này có ba phiên bản khác nhau (SIM7000A / C / E / G) và tùy thuộc vào quốc gia bạn sinh sống, bạn sẽ cần chọn phiên bản phù hợp. Tôi đã tạo trang này trên wiki Github để chỉ cho bạn cách tìm ra phiên bản nào phù hợp nhất với bạn!
  • Thẻ SIM LTE CAT-M hoặc NB-IoT - Mặc dù bộ này không còn bao gồm thẻ SIM miễn phí, nhưng bạn có thể nhận thẻ SIM Hologram cung cấp cho bạn 1MB miễn phí mỗi tháng và hoạt động thực tế ở mọi nơi trên thế giới vì Hologram đã hợp tác với hơn 500 nhà cung cấp dịch vụ! Họ cũng có các gói trả tiền theo tháng và hàng tháng, đồng thời có một diễn đàn cộng đồng tuyệt vời để hỗ trợ kỹ thuật về kích hoạt thẻ SIM, API Hologram và hơn thế nữa! Nó hoạt động tốt với lá chắn này trên toàn quốc ở Hoa Kỳ cho mạng LTE CAT-M1 của AT&T và Verizon nhưng lưu ý rằng ở các quốc gia khác, bạn có thể phải nhận thẻ SIM của riêng mình từ một nhà cung cấp địa phương vì Hologram hợp tác với các nhà cung cấp dịch vụ và CAT-M và NB-IoT là tương đối mới.
  • Pin LiPo 3.7V (1000mAH +): Trong khi tìm kiếm mạng hoặc truyền dữ liệu, tấm chắn có thể tạo ra một lượng dòng điện đáng kể và bạn không thể dựa vào nguồn điện trực tiếp từ thanh Arduino 5V. Cắm pin LiPo 3.7V vào đầu nối JST trên bo mạch và đảm bảo rằng pin được nối với dây dương ở bên trái (giống như những loại được tìm thấy ở Sparkfun hoặc Adafruit). Ngoài ra, điều quan trọng là đảm bảo rằng pin phải có dung lượng ít nhất 500mAH (tối thiểu ở mức tối thiểu) để có thể cung cấp đủ dòng điện và ngăn mô-đun khởi động lại trong thời gian tăng đột biến hiện tại. 1000mAH trở lên được khuyến nghị để ổn định. Sở dĩ có dung lượng tối thiểu trần như vậy là do mạch sạc pin LiPo được đặt ở mức 500mA, vì vậy bạn nên đảm bảo rằng pin có dung lượng ít nhất là 500mAH để tránh làm hỏng pin.

Bước 2: Lắp ráp tấm chắn

Lắp ráp lá chắn
Lắp ráp lá chắn
Lắp ráp lá chắn
Lắp ráp lá chắn
Lắp ráp lá chắn
Lắp ráp lá chắn

Để sử dụng tấm chắn, bạn sẽ cần phải hàn các đầu cắm vào nó trừ khi bạn không có kế hoạch sử dụng tấm bảng này như một "tấm chắn" và thay vào đó là một mô-đun độc lập, điều này cũng hoàn toàn ổn! Một ví dụ về việc này là sử dụng Arduino Micro làm bộ điều khiển và nối dây riêng với tấm chắn.

Lựa chọn phổ biến nhất để sử dụng bảng làm lá chắn Arduino là xếp chồng các tiêu đề nữ, được bao gồm cùng với tấm chắn. Sau khi hàn các tiêu đề, hãy tiếp tục và đặt tấm chắn lên trên bảng Arduino (trừ khi bạn đang sử dụng nó như một bảng độc lập) và bạn đã sẵn sàng cho bước tiếp theo!

Lưu ý: Để biết các mẹo về cách hàn các chốt, bạn có thể truy cập trang này của wiki Github.

Bước 3: Shield Pinouts

Shield Pinouts
Shield Pinouts
Shield Pinouts
Shield Pinouts
Shield Pinouts
Shield Pinouts

Lá chắn chỉ đơn giản là sử dụng sơ đồ chân của Arduino nhưng kết nối các chân nhất định cho các mục đích cụ thể. Các chân này có thể được tóm tắt dưới đây:

Chân điện

  • GND - Điểm chung cho tất cả logic và nguồn
  • 3.3V - 3.3V từ bộ điều chỉnh của Arduino. Sử dụng điều này giống như bạn làm trên Arduino!
  • 5V / LOGIC - Đường ray 5V này từ Arduino sạc pin LiPo cung cấp năng lượng cho SIM7000 và cũng đặt điện áp logic cho I2C và dịch chuyển mức. Nếu bạn đang sử dụng vi điều khiển 3.3V, hãy kết nối 3.3V với chân "5V" của lá chắn (vui lòng xem phần bên dưới).
  • VBAT - Điều này cấp quyền truy cập vào điện áp pin LiPo và thường không được kết nối với bất kỳ thứ gì trên Arduino, vì vậy bạn có thể tự do sử dụng nó như bạn muốn! Nó cũng giống như điện áp đầu vào của mô-đun SIM7000. Nếu bạn đang nghĩ đến việc đo và theo dõi điện áp này, hãy xem lệnh "b" trong hướng dẫn demo để đo điện áp và hiển thị phần trăm pin! Hãy nhớ rằng, pin LiPo là bắt buộc!
  • VIN - Chân này được kết nối đơn giản với chân VIN trên Arduino. Bạn có thể cấp nguồn cho Arduino như bình thường với 7-12V trên chân này.

Ghim khác

  • D6 - Đã kết nối với chân PWRKEY của SIM7000
  • D7 - chân Đặt lại của SIM7000 (chỉ sử dụng trong trường hợp đặt lại khẩn cấp!)
  • D8 - Chân sẵn sàng cho đầu cuối dữ liệu UART (DTR). Điều này có thể được sử dụng để đánh thức mô-đun khỏi chế độ ngủ khi sử dụng lệnh "AT + CSCLK"
  • D9 - Chân chỉ báo chuông (RI)
  • D10 - Chân truyền UART (TX) của SIM7000 (điều này có nghĩa là bạn nên kết nối TX của Arduino với chân này!)
  • D11 - Chân nhận UART (RX) của SIM7000 (kết nối với chân TX của Arduino)
  • D12 - Tốt 'ole D12 trên Arduino, NHƯNG bạn có thể kết nối nó với chân ngắt ALERT của cảm biến nhiệt độ bằng cách hàn một jumper
  • SDA / SCL - Cảm biến nhiệt độ được kết nối với tấm chắn thông qua I2C

Nếu bạn đang sử dụng bo mạch như một mô-đun độc lập chứ không phải như một "lá chắn" hoặc nếu bạn đang sử dụng logic 3.3V thay vì 5V, bạn sẽ cần phải thực hiện các kết nối cần thiết như được nêu chi tiết trong phần "Kết nối bảng mạch chủ bên ngoài" của trang wiki Github này.

Tuy nhiên, nếu tất cả những gì bạn cần là kiểm tra các lệnh AT, thì bạn chỉ cần kết nối pin LiPo và cáp micro USB, sau đó làm theo các quy trình sau để kiểm tra các lệnh AT qua USB. Lưu ý rằng bạn cũng có thể kiểm tra các lệnh AT thông qua Arduino IDE, nhưng điều đó sẽ yêu cầu chân kết nối D10 / D11 cho UART.

Để biết thông tin chi tiết về sơ đồ chân của lá chắn và chức năng của mỗi chân, hãy truy cập trang wiki Github này.

Bước 4: Cấp nguồn cho Shield

Cung cấp năng lượng cho lá chắn
Cung cấp năng lượng cho lá chắn

Để cấp nguồn cho tấm chắn, chỉ cần cắm Arduino và cắm vào pin LiPo 3.7V (dung lượng 1000mAH hoặc lớn hơn) như pin được bán tại Adafruit hoặc Sparkfun. Nếu không có pin, bạn có thể sẽ thấy mô-đun khởi động rồi sập ngay sau đó. Bạn vẫn có thể cấp nguồn cho Arduino như bình thường thông qua cáp USB hoặc bên ngoài bằng nguồn điện 7-12V trên chân VIN và đường ray 5V trên Arduino sẽ sạc pin LiPo. Lưu ý rằng nếu bạn đang sử dụng bảng Arduino tiêu chuẩn, bạn có thể cấp nguồn an toàn cho nó thông qua nguồn điện bên ngoài trong khi vẫn cắm cáp lập trình vì nó có mạch chọn điện áp.

Chỉ báo LED

Lúc đầu, bạn có thể tự hỏi liệu bảng còn sống hay không vì có thể không có bất kỳ đèn LED nào được bật. Điều này là do đèn LED "PWR" là đèn báo nguồn cho chính mô-đun SIM7000 và mặc dù bạn đang cấp nguồn nhưng bạn vẫn chưa bật mô-đun! Điều này được thực hiện bằng cách tạo xung PWRKEY thấp trong ít nhất 72ms, điều này tôi sẽ giải thích sau. Ngoài ra, nếu bạn đã kết nối pin và nó chưa được sạc đầy, đèn LED "XONG" màu xanh lá cây sẽ không bật, nhưng nếu bạn không có pin được kết nối, đèn LED này sẽ bật (và đôi khi có thể nhấp nháy khi bị lừa nghĩ rằng pin không tồn tại không được sạc đầy do điện áp giảm nhẹ).

Bây giờ bạn đã biết cách cung cấp năng lượng cho mọi thứ, hãy chuyển sang nội dung di động!

Bước 5: Thẻ SIM & Ăng-ten

Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten
Thẻ SIM & Ăng-ten

Chọn thẻ SIM

Một lần nữa, thẻ SIM của bạn cần có khả năng hỗ trợ LTE CAT-M (không chỉ LTE truyền thống như những gì có thể có trong điện thoại của bạn) hoặc NB-IoT và nó phải có kích thước SIM "siêu nhỏ". Tùy chọn tốt nhất mà tôi đã tìm thấy cho lá chắn này là thẻ SIM Hologram Developer cung cấp 1MB / tháng miễn phí và quyền truy cập vào các tài nguyên và API của Hologram cho thẻ SIM đầu tiên! Chỉ cần đăng nhập vào bảng điều khiển Hologram.io của bạn và nhập số CCID của SIM để kích hoạt nó, sau đó đặt cài đặt APN trong mã (đã được đặt theo mặc định). Nó không có rắc rối và hoạt động ở mọi nơi trên thế giới vì Hologram hỗ trợ hơn 200 nhà cung cấp dịch vụ trên toàn cầu!

Cần lưu ý rằng các phiên bản SIM7000C / E / G cũng hỗ trợ dự phòng 2G, vì vậy nếu bạn thực sự muốn thử nghiệm và không có thẻ SIM LTE CAT-M hoặc NB-IoT, bạn vẫn có thể thử nghiệm mô-đun trên 2G.

Lắp thẻ SIM

Trước hết, bạn nên tách micro SIM ra khỏi ngăn chứa thẻ SIM có kích thước bình thường. Trên tấm chắn LTE, hãy xác định vị trí ngăn chứa thẻ SIM ở bên trái của bo mạch gần đầu nối pin. Thẻ SIM được lắp vào ngăn chứa này với các điểm tiếp xúc bằng kim loại của SIM hướng xuống dưới và rãnh nhỏ ở một cạnh đối diện với ngăn chứa thẻ SIM.

Antenna tốt

Bộ khiên đi kèm với ăng-ten LTE / GPS kép thực sự tiện lợi! Nó cũng linh hoạt (mặc dù bạn không nên cố gắng xoắn và uốn cong nó nhiều vì bạn có thể làm đứt dây ăng-ten ra khỏi ăng-ten nếu không cẩn thận) và có một lớp keo chống bong tróc ở phía dưới. Kết nối dây cực kỳ đơn giản: chỉ cần lấy dây và gắn chúng vào các đầu nối uFL phù hợp ở cạnh bên phải của tấm chắn. LƯU Ý: Đảm bảo bạn khớp dây LTE trên ăng-ten với đầu nối LTE trên tấm chắn và giống với dây GPS vì chúng đan chéo nhau!

Bước 6: Thiết lập Arduino IDE

Thiết lập Arduino IDE
Thiết lập Arduino IDE

Tấm chắn SIM7000 này dựa trên bo mạch Adafruit FONA và sử dụng cùng một thư viện nhưng được cải tiến với hỗ trợ thêm modem. Bạn có thể đọc hướng dẫn đầy đủ về cách cài đặt thư viện FONA đã sửa đổi của tôi tại đây trên trang Github của tôi.

Bạn cũng có thể xem cách kiểm tra cảm biến nhiệt độ MCP9808 bằng cách làm theo các hướng dẫn sau, nhưng ở đây tôi sẽ chủ yếu tập trung vào nội dung di động!

Bước 7: Ví dụ về Arduino

Ví dụ về Arduino
Ví dụ về Arduino
Ví dụ về Arduino
Ví dụ về Arduino
Ví dụ về Arduino
Ví dụ về Arduino

Thiết lập tốc độ truyền

Theo mặc định, SIM7000 chạy ở tốc độ 115200 baud nhưng điều này quá nhanh để nối tiếp phần mềm hoạt động một cách đáng tin cậy và các ký tự có thể xuất hiện ngẫu nhiên dưới dạng hộp vuông hoặc các ký hiệu kỳ lạ khác (ví dụ: "A" có thể hiển thị là "@"). Đây là lý do tại sao nếu bạn xem xét cẩn thận, Arduino định cấu hình mô-đun thành tốc độ truyền chậm hơn là 9600 mỗi khi nó được khởi tạo. May mắn thay, việc chuyển đổi được tự động xử lý bởi mã, vì vậy bạn không cần phải làm bất cứ điều gì đặc biệt để thiết lập nó!

Bản trình diễn LTE Shield

Tiếp theo, làm theo các hướng dẫn sau để mở bản phác thảo "LTE_Demo" (hoặc bất kỳ biến thể nào của bản phác thảo đó, tùy thuộc vào vi điều khiển bạn đang sử dụng). Nếu bạn cuộn xuống cuối hàm "setup ()", bạn sẽ thấy dòng "fona.setGPRSNetworkSettings (F (" hologram "));" đặt APN cho thẻ SIM Ba chiều. Điều này là hoàn toàn cần thiết và nếu bạn đang sử dụng một thẻ SIM khác, trước tiên, bạn nên tham khảo tài liệu của thẻ về APN là gì. Lưu ý rằng bạn chỉ cần thay đổi dòng này nếu bạn không sử dụng thẻ SIM Ba chiều.

Khi mã chạy, Arduino sẽ cố gắng giao tiếp với SIM7000 qua UART (TX / RX) bằng SoftwareSerial. Để làm được điều này, tất nhiên SIM7000 phải được bật nguồn, vì vậy trong khi cố gắng thiết lập kết nối, hãy kiểm tra đèn LED "PWR" để đảm bảo rằng nó đã bật! (Lưu ý: nó sẽ bật khoảng 4 giây sau khi mã chạy). Sau khi Arduino thiết lập thành công giao tiếp với mô-đun, bạn sẽ thấy một menu lớn với một loạt các hành động mà mô-đun có thể thực hiện! Tuy nhiên, lưu ý rằng một số trong số này dành cho các mô-đun 2G hoặc 3G khác của SIMCom, vì vậy không phải tất cả các lệnh đều áp dụng được cho SIM7000 nhưng rất nhiều lệnh trong số đó đều áp dụng được! Chỉ cần nhập ký tự tương ứng với hành động bạn muốn thực hiện và nhấp vào "Gửi" ở trên cùng bên phải của màn hình nối tiếp hoặc chỉ cần nhấn phím Enter. Kinh ngạc theo dõi khi chiếc khiên trả lời lại!

Lệnh Demo

Dưới đây là một số lệnh bạn nên chạy để đảm bảo mô-đun của bạn được thiết lập trước khi tiếp tục:

  • Gõ "n" và nhấn enter để kiểm tra đăng ký mạng. Bạn sẽ thấy "Đã đăng ký (nhà)". Nếu không, hãy kiểm tra xem ăng-ten của bạn đã được gắn chưa và bạn cũng có thể phải chạy lệnh "G" (giải thích bên dưới) trước!
  • Kiểm tra cường độ tín hiệu mạng bằng cách nhập "i". Bạn sẽ nhận được một giá trị RSSI; giá trị này càng cao càng tốt! Của tôi là 31, cho thấy khung cường độ tín hiệu tốt nhất!
  • Nhập lệnh "1" để kiểm tra một số thông tin mạng thực sự thú vị. Bạn có thể nhận chế độ kết nối hiện tại, tên nhà cung cấp dịch vụ, băng tần, v.v.
  • Nếu bạn đã kết nối pin, hãy thử lệnh "b" để đọc phần trăm và điện áp pin. Nếu bạn không sử dụng pin, lệnh này sẽ luôn đọc khoảng 4200mV và do đó nói rằng nó đã được sạc 100%.
  • Bây giờ, hãy nhập "G" để bật dữ liệu di động. Điều này đặt APN và rất quan trọng để thiết bị của bạn được kết nối với web! Nếu bạn thấy "LỖI", hãy thử tắt dữ liệu bằng cách sử dụng "g" rồi thử lại.
  • Để kiểm tra xem bạn có thể thực sự làm điều gì đó với mô-đun của mình hay không, hãy nhập "w". Nó sẽ nhắc bạn nhập URL của trang web bạn muốn đọc và sao chép / dán URL mẫu "https://dweet.io/get/latest/dweet/for/sim7000test123" và nhấn enter. Ngay sau đó, nó sẽ cung cấp cho bạn một thông báo như "{" this ":" fail "," with ": 404," bởi vì ":" chúng tôi không thể tìm thấy cái này "}" (giả sử không ai đăng dữ liệu cho "sim7000test123")
  • Bây giờ, hãy thử nghiệm gửi dữ liệu giả tới dweet.io, một API đám mây miễn phí bằng cách nhập "2" vào màn hình nối tiếp. Bạn sẽ thấy nó chạy qua một số lệnh AT.
  • Để kiểm tra xem dữ liệu có thực sự được thông qua hay không, hãy thử lại "w" và lần này nhập "https://dweet.io/get/latest/dweet/for/{deviceID}" mà không có dấu ngoặc, trong đó ID thiết bị là IMEI số thiết bị của bạn sẽ được in ở đầu màn hình nối tiếp từ khi khởi tạo mô-đun. Bạn sẽ thấy "thành công" và phản hồi JSON chứa dữ liệu bạn vừa gửi! (Lưu ý rằng 87% pin chỉ là một số giả được đặt trong mã và có thể không phải là mức pin thực của bạn)
  • Bây giờ là lúc để kiểm tra GPS! Bật nguồn cho GPS bằng "O"
  • Nhập "L" để truy vấn dữ liệu vị trí. Lưu ý rằng bạn có thể phải đợi khoảng 7-10 giây trước khi nó được sửa chữa vị trí. Bạn có thể tiếp tục nhập "L" cho đến khi nó hiển thị cho bạn một số dữ liệu!
  • Sau khi nó cung cấp cho bạn dữ liệu, hãy sao chép và dán nó vào Microsoft Word hoặc trình soạn thảo văn bản để dễ đọc hơn. Bạn sẽ thấy rằng số thứ ba (các số được phân tách bằng dấu phẩy) là ngày và giờ, và ba số tiếp theo là vĩ độ, kinh độ và độ cao (tính bằng mét) của vị trí của bạn! Để kiểm tra xem nó có chính xác hay không, hãy truy cập công cụ trực tuyến này và tìm kiếm vị trí hiện tại của bạn. Nó sẽ cung cấp cho bạn vĩ độ / kinh độ và độ cao và so sánh các giá trị này với giá trị mà GPS của bạn đã cung cấp!
  • Nếu bạn không cần GPS, bạn có thể tắt nó bằng cách sử dụng "o"
  • Hãy vui vẻ với các lệnh khác và xem bản phác thảo ví dụ "IoT_Example" để biết một ví dụ thú vị về cách gửi dữ liệu tới API đám mây miễn phí qua LTE!

Gửi và nhận tin nhắn

Để xem cách gửi văn bản từ khiên trực tiếp tới bất kỳ điện thoại nào và gửi văn bản tới khiên qua Bảng điều khiển hoặc API của Hologram, vui lòng đọc trang wiki Github này.

Ví dụ về IoT: Theo dõi GPS

Sau khi bạn xác minh mọi thứ đang hoạt động như mong đợi, hãy mở bản phác thảo "IoT_Example". Mã ví dụ này gửi vị trí GPS và dữ liệu mang, nhiệt độ và mức pin lên đám mây! Tải mã lên và ngạc nhiên xem chiếc khiên thực hiện phép thuật của nó! Để kiểm tra xem dữ liệu có thực sự được gửi đến đám mây hay không, hãy truy cập "https://dweet.io/get/latest/dweet/for/{IMEI}" trong bất kỳ trình duyệt nào (điền vào số IMEI được tìm thấy ở đầu màn hình nối tiếp sau khi khởi tạo mô-đun hoặc được in trên mô-đun SIMCOM của bạn) và bạn sẽ thấy dữ liệu mà thiết bị của bạn đã gửi!

Với ví dụ này, bạn cũng có thể bỏ ghi chú dòng có "#define samplingRate 30" để gửi dữ liệu nhiều lần thay vì chỉ chạy một lần. Điều này làm cho thiết bị của bạn về cơ bản là một thiết bị theo dõi GPS!

Để biết thêm chi tiết, vui lòng truy cập các hướng dẫn tôi đã thực hiện để theo dõi GPS trong thời gian thực:

  • Hướng dẫn theo dõi GPS phần 1
  • Hướng dẫn theo dõi GPS phần 2

Xử lý sự cố

Đối với các câu hỏi thường gặp và các vấn đề khắc phục sự cố, vui lòng truy cập Câu hỏi thường gặp trên Github.

Bước 8: Kiểm tra bằng lệnh AT

Kiểm tra với lệnh AT
Kiểm tra với lệnh AT

Thử nghiệm từ Arduino IDE

Nếu bạn muốn gửi lệnh AT đến mô-đun thông qua màn hình nối tiếp, hãy sử dụng lệnh "S" từ menu để vào chế độ ống nối tiếp. Điều này sẽ làm cho mọi thứ bạn nhập vào màn hình nối tiếp sẽ được gửi đến mô-đun. Điều đó đang được nói, hãy đảm bảo bật "Cả NL & CR" ở cuối màn hình nối tiếp, nếu không bạn sẽ không thấy bất kỳ phản hồi nào đối với các lệnh của mình vì mô-đun sẽ không biết bạn đã nhập xong!

Để thoát khỏi chế độ này, chỉ cần nhấn nút đặt lại trên Arduino của bạn. Lưu ý rằng nếu bạn đang sử dụng bo mạch dựa trên ATmega32u4 hoặc ATSAMD21, bạn cũng sẽ phải khởi động lại màn hình nối tiếp.

Để biết thêm thông tin về cách gửi lệnh AT từ Arduino IDE, vui lòng xem trang wiki này.

Kiểm tra trực tiếp qua USB

Có lẽ một phương pháp dễ dàng hơn (dành cho người dùng Windows) là cài đặt trình điều khiển Windows được trình bày chi tiết trong hướng dẫn này và kiểm tra các lệnh AT bằng cách sử dụng cổng micro USB của khiên thay thế!

Nếu bạn vẫn muốn thử nghiệm với các lệnh AT nhưng muốn chạy chúng theo trình tự và không muốn gặp rắc rối với việc thay đổi thư viện FONA, bạn có thể làm điều đó với một thư viện nhỏ đơn giản mà tôi đã viết có tên "Thư viện lệnh AT" mà bạn có thể tìm thấy ở đây trên Github. Tất cả những gì bạn cần làm là tải xuống ZIP từ kho lưu trữ và giải nén nó vào thư mục thư viện Arduino của bạn và một bản phác thảo ví dụ (được gọi là "AT_Command_Test.ino") cho SIM7000 có thể được tìm thấy tại đây trong kho Github của lá chắn LTE. Thư viện này cho phép bạn gửi các lệnh AT qua Phần mềm nối tiếp với thời gian chờ, kiểm tra câu trả lời cụ thể từ mô-đun, không hoặc cả hai!

Bước 9: Tiêu dùng hiện tại

Đối với các thiết bị IoT, bạn muốn thấy những con số này giảm dần, vì vậy hãy cùng xem qua một số thông số kỹ thuật! Để có báo cáo chi tiết về các phép đo tiêu thụ hiện tại, vui lòng xem trang Github này.

Đây là một bản tóm tắt nhanh:

  • Mô-đun SIM7000 tắt nguồn: toàn bộ lá chắn hút <8uA trên pin LiPo 3.7V
  • Chế độ ngủ sử dụng khoảng 1,5mA (bao gồm cả đèn LED PWR màu xanh lá cây, vì vậy có thể ~ 1mA nếu không có nó) và vẫn kết nối với mạng
  • Cài đặt e-DRX có thể định cấu hình thời gian chu kỳ của đàm phán mạng và tiết kiệm năng lượng nhưng cũng sẽ trì hoãn những thứ như tin nhắn văn bản đến tùy thuộc vào thời gian chu kỳ được đặt thành
  • Kết nối với mạng LTE CAT-M1, nhàn rỗi: ~ 12mA
  • GPS thêm ~ 32mA
  • Kết nối USB thêm ~ 20mA
  • Truyền dữ liệu qua LTE CAT-M1 là ~ 96mA trong ~ 12 giây
  • Gửi các bản vẽ SMS ~ 96mA trong ~ 10 giây
  • Nhận bản vẽ SMS ~ 89mA trong ~ 10 giây
  • PSM nghe có vẻ như một tính năng tuyệt vời nhưng vẫn chưa hoạt động

Và đây là một lời giải thích thêm một chút:

  • Chế độ tắt nguồn: Bạn có thể sử dụng chức năng "fona.powerDown ()" để tắt hoàn toàn SIM7000. Ở trạng thái này, mô-đun chỉ rút ra khoảng 7,5uA và ngay sau khi bạn tắt mô-đun, đèn LED "PWR" cũng sẽ tắt.
  • Chế độ tiết kiệm năng lượng (PSM): Chế độ này giống như chế độ tắt nguồn nhưng modem vẫn được đăng ký với mạng trong khi chỉ vẽ 9uA trong khi vẫn giữ cho mô-đun được cấp nguồn. Trong chế độ này, chỉ nguồn của RTC mới hoạt động. Đối với những người hâm mộ ESP8266 ngoài kia, về cơ bản nó là "ESP.deepSleep ()" và bộ hẹn giờ RTC có thể đánh thức mô-đun nhưng bạn có thể làm một số việc khá thú vị như đánh thức modem bằng cách gửi SMS cho nó. Tuy nhiên, rất tiếc là tôi không thể làm cho tính năng này hoạt động. Chắc chắn hãy cho tôi biết nếu bạn làm thế!
  • Chế độ Máy bay: Ở chế độ này, nguồn điện vẫn được cung cấp cho mô-đun nhưng RF hoàn toàn bị vô hiệu hóa nhưng thẻ SIM vẫn hoạt động cũng như giao diện UART và USB. Bạn có thể vào chế độ này bằng cách sử dụng "AT + CFUN = 4" nhưng tôi cũng không thấy điều này có hiệu lực.
  • Chế độ Chức năng Tối thiểu: Chế độ này giống với Chế độ Máy bay ngoại trừ giao diện thẻ SIM không thể truy cập được. Bạn có thể vào chế độ này bằng cách sử dụng "AT + CFUN = 0" nhưng bạn cũng có thể vào chế độ này bằng "AT + CSCLK = 1", sau đó SIM7000 sẽ kéo chân DTR lên khi mô-đun ở chế độ nhàn rỗi. Trong chế độ ngủ này, kéo DTR xuống thấp sẽ đánh thức mô-đun. Điều này có thể hữu ích vì đánh thức nó có thể nhanh hơn rất nhiều so với bật lại từ đầu!
  • Chế độ tiếp nhận / truyền không liên tục (DRX / DTX): Bạn có thể định cấu hình "tốc độ lấy mẫu" của mô-đun để nói chuyện, để mô-đun chỉ kiểm tra tin nhắn văn bản hoặc gửi dữ liệu với tốc độ nhanh hơn hoặc chậm hơn, tất cả trong khi vẫn được kết nối với mạng lưới. Điều này làm giảm đáng kể mức tiêu thụ hiện tại!
  • Tắt đèn LED "PWR": Để tiết kiệm thêm một vài xu, bạn có thể tắt đèn LED nguồn của mô-đun bằng cách cắt dây nối hàn thường đóng bên cạnh nó. Nếu sau này bạn thay đổi ý định và muốn nó trở lại, chỉ cần hàn dây nối lại!
  • Bật / Tắt LED "NETLIGHT": Bạn cũng có thể sử dụng "AT + CNETLIGHT = 0" để tắt hoàn toàn đèn LED trạng thái mạng màu xanh lam nếu bạn không cần thiết!
  • GNSS On / Off: Bạn có thể tiết kiệm 30mA bằng cách tắt GPS bằng lệnh "fona.enableGPS ()" với tham số đầu vào là true hoặc false. Nếu bạn không sử dụng nó, tôi khuyên bạn nên tắt nó đi! Ngoài ra, tôi thấy rằng chỉ mất khoảng 20 giây để xác định vị trí ngay từ đầu và chỉ khoảng 2 giây khi thiết bị đã được bật (như nếu bạn tắt GPS sau đó bật lại và truy vấn lại), khá nhanh ! Bạn cũng có thể thử nghiệm với khởi động ấm / nóng và GPS hỗ trợ.

Bước 10: Kết luận

Nhìn chung, SIM7000 siêu nhanh và sử dụng công nghệ tiên tiến với GPS tích hợp và được trang bị nhiều tính năng thú vị! Thật không may cho những người trong chúng ta ở Hoa Kỳ, NB-IoT không được triển khai đầy đủ ở đây vì vậy chúng ta sẽ phải đợi một chút cho đến khi nó ra mắt, nhưng với lá chắn LTE này, chúng ta vẫn có thể sử dụng LTE CAT-M1 trên mạng của AT&T và Verizon. Tấm chắn này rất phù hợp để thử nghiệm với các thiết bị di động tiêu thụ điện năng thấp như bộ theo dõi GPS, bộ ghi dữ liệu từ xa và nhiều hơn thế nữa! Bằng cách bao gồm các tấm chắn và mô-đun khác cho những thứ như bộ nhớ thẻ SD, tấm pin mặt trời, cảm biến và kết nối không dây khác, khả năng gần như là vô tận!

  • Nếu bạn thích dự án này, xin vui lòng cho nó một trái tim và bình chọn cho nó!
  • Nếu bạn có bất kỳ nhận xét, đề xuất hoặc câu hỏi nào, hãy đăng nó bên dưới!
  • Để đặt hàng tấm chắn của riêng bạn, vui lòng truy cập trang web của tôi để biết thông tin hoặc đặt hàng trên Amazon.com
  • Như mọi khi, hãy chia sẻ dự án này!

Như đã nói, chúc DIY'ing vui vẻ và hãy đảm bảo chia sẻ các dự án và cải tiến của bạn với mọi người!

~ Tim

Đề xuất: