
Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15
Bởi elizabethna






Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách theo dõi vị trí theo thời gian thực bằng BerryGPS-GSM, Raspberry Pi Zero và Initial State. Chúng tôi sẽ gửi kinh độ, vĩ độ và tốc độ qua 3G với BerryGPS-GSM về Trạng thái ban đầu.
Quân nhu
- Raspberry Pi Zero
- BerryGPS-GSM
- Trạng thái ban đầu
Bước 1: Trạng thái ban đầu

Chúng tôi muốn truyền tất cả dữ liệu kinh độ, vĩ độ và tốc độ của mình lên một dịch vụ đám mây và nhờ dịch vụ đó biến dữ liệu của chúng tôi thành một bảng điều khiển đẹp mà chúng tôi có thể truy cập từ máy tính xách tay hoặc thiết bị di động của mình. Chúng tôi sẽ sử dụng Trạng thái ban đầu.
Bước 1: Đăng ký tài khoản trạng thái ban đầu
Truy cập https://iot.app.initialstate.com và tạo một tài khoản mới. Bạn được dùng thử miễn phí 14 ngày và bất kỳ ai có địa chỉ email edu đều có thể đăng ký gói miễn phí dành cho sinh viên.
Bước 2: Cài đặt ISStreamer
Cài đặt mô-đun Python trạng thái ban đầu vào Raspberry Pi của bạn. Trong dấu nhắc lệnh, hãy chạy lệnh sau:
$ cd / home / pi /
$ / curl -sSL https://get.initialstate.com/python -o - | sudo bash
Bước 3: Tạo một số Automagic
Sau Bước 2, bạn sẽ thấy một cái gì đó tương tự như kết quả sau ra màn hình:
pi @ raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o - | sudo bashPassword: Bắt đầu cài đặt Python ISStreamer Dễ dàng! Quá trình này có thể mất vài phút để cài đặt, hãy uống một chút cà phê:) Nhưng đừng quên quay lại, tôi sẽ có câu hỏi sau! Tìm thấy easy_install: setuptools 1.1.6 Tìm thấy pip: pip 1.5.6 từ /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) Phiên bản chính pip: Phiên bản nhỏ 1 pip: 5 ISStreamer được tìm thấy, đang cập nhật… Yêu cầu đã được cập nhật: ISStreamer trong Thư viện / Python / 2.7 / gói trang web Đang dọn dẹp… Bạn có muốn tự động lấy một tập lệnh mẫu không? [y / N] Bạn muốn lưu ví dụ ở đâu? [default:./is_example.py] Vui lòng chọn ứng dụng Trạng thái ban đầu bạn đang sử dụng: 1. app.initialstate.com 2. [MỚI!] iot.app.initialstate.com Nhập lựa chọn 1 hoặc 2: Nhập iot.app Tên người dùng.initialstate.com: Nhập mật khẩu iot.app.initialstate.com:
Khi được hỏi liệu bạn có muốn tự động lấy một tập lệnh mẫu, hãy đặt "y" cho có và nhấn enter để lưu tập lệnh của bạn ở vị trí mặc định. Đối với câu hỏi về ứng dụng bạn đang sử dụng, hãy chọn 2 (trừ khi bạn đăng ký trước tháng 11 năm 2018) và nhập tên người dùng và mật khẩu của bạn.
Bước 4: Chạy tập lệnh mẫu
Chạy tập lệnh thử nghiệm để đảm bảo chúng tôi có thể tạo luồng dữ liệu vào tài khoản Trạng thái ban đầu của bạn. Viết lệnh sau:
$ python is_example.py
Bước 5: Dữ liệu mẫu
Quay lại tài khoản Trạng thái ban đầu trong trình duyệt web của bạn. Một nhóm dữ liệu mới được gọi là “Ví dụ về luồng Python” đáng lẽ phải hiển thị ở bên trái trong giá nhật ký của bạn (bạn có thể phải làm mới trang). Nhấp vào nhóm này để xem dữ liệu của bạn.
Bước 2: BerryGPS-GSM & Raspberry Pi Zero

Nếu bạn đang sử dụng BerryGPS-GSM, bạn có thể làm theo hướng dẫn này để GPS hoạt động và giúp Pi của bạn kết nối qua 3G bằng PPP.
Hướng dẫn được liên kết cũng chỉ ra cách làm cho Pi của bạn tự động kết nối với mạng của nhà cung cấp dịch vụ khi khởi động. Bạn sẽ cần điều này nếu bạn định thực hiện theo dõi từ xa.
Cài đặt thư viện
Bạn sẽ cần cài đặt các thư viện sau:
$ sudo apt-get install python-pip
$ sudo pip cài đặt pynmea2 $ sudo pip cài đặt ISStreamer
Tập lệnh Python chính
Ở đây chúng ta sẽ tạo tập lệnh chính sẽ truyền dữ liệu GPS về Trạng thái ban đầu. Đoạn mã dưới đây tạo một luồng riêng biệt được sử dụng để giám sát cổng nối tiếp. Điều này là cần thiết vì chúng ta có một khoảng dừng trong vòng lặp chính. Việc tạm dừng là ở đó để giới hạn lượng dữ liệu chúng tôi tải lên qua 3G.
Nếu chúng tôi đã làm mọi thứ trong cùng một chuỗi trong thời gian tạm dừng, bộ đệm nối tiếp sẽ đầy (nó là FIFO) và khi chúng tôi nhận được giá trị tiếp theo từ bộ đệm, nó sẽ cũ vài giây. Điều này xảy ra mỗi vòng lặp và cuối cùng dữ liệu sẽ chậm hơn vài phút hoặc vài giờ.
Để tạo tập lệnh python và mở trình soạn thảo văn bản, hãy nhập lệnh sau:
$ nano GPStracker.py
Sao chép và dán đoạn mã sau vào trình soạn thảo văn bản. Bạn sẽ cần nhập Khoá Truy cập Trạng thái Ban đầu của mình trên dòng 11 có nội dung "NHẬP KHÓA TRUY CẬP CỦA BẠN":
#! / usr / bin / pythonfrom gps import * from time import * import threading import datetime from ISStreamer. Streamer import Streamer gpsd = None #Setup global variable # Thiết lập luồng Trạng thái ban đầu, nhập khóa truy cập của bạn bên dưới streamer = Streamer (bucket_name = "GPS_Tracker ", bucket_key =" GPS_TRACKER ", access_key =" NHẬP KHÓA TRUY CẬP CỦA BẠN ") lớp GPSDcollector (threading. Thread): def _init _ (self, threadID): threading. Thread._ init _ (self) self.threadID = threadID global gpsd #bring nó trong phạm vi gpsd = gps (mode = WATCH_ENABLE) # Bắt đầu GPSD self.running = True # Bắt đầu chạy chuỗi này def run (self): global gpsd while gpsdThread.running: gpsd.next () if _name_ == '_main_': gpsdThread = GPSDcollector (1) # tạo một chuỗi để thu thập dữ liệu, hãy thử: gpsdThread.start () # khởi động nó trong khi True: print 'GPS', gpsd.utc, 'CPU time->', datetime.datetime.now ().time (), if (gpsd.fix.longitude0) và (gpsd.fix.longitude'nan '): streamer.log ("Vị trí", "{lat}, {lon}". format (lat = gpsd.fix.latitude, lon = gpsd.fix.longitu de)) streamer.log ("speed", gpsd.fix.speed) print 'lat', gpsd.fix.latitude, print 'lon', gpsd.fix.longitude, print 'speed', gpsd.fix.speed sleep (5) ngoại trừ (KeyboardInterrupt, SystemExit): # khi bạn nhấn ctrl + c print "\ nKilling Thread…" gpsdThread.running = False gpsdThread.join () # đợi chuỗi hoàn thành việc in "Xong. / NExiting."
Lưu và thoát khỏi trình soạn thảo văn bản, nhấn CTRL + X, Y, enter.
Bắt đầu tập lệnh tự động khi khởi động
Nếu bạn đang thực hiện giám sát từ xa, bạn sẽ muốn tập lệnh chạy khi khởi động. Để làm điều này, chúng tôi sẽ tạo một tập lệnh nhỏ sẽ bắt đầu chương trình python chính. Nhập lệnh sau:
$ nano GPStrackerStart.sh
Sao chép các dòng vào trình soạn thảo văn bản:
#! / bin / bash
ngủ 15 python /home/pi/GPStracker.py &
Việc tạm dừng ở trên là ở đó để cho Pi có thời gian khởi động và kết nối qua PPP.
Làm cho tập lệnh có thể thực thi:
$ chmod + x ~ / GPStrackerStart.sh
Chúng tôi sẽ sử dụng cron để bắt đầu tập lệnh mỗi khi Pi khởi động:
$ crontab -e
Thêm dòng dưới đây vào cuối:
@reboot /home/pi/GPStrackerStart.sh &
Bước 3: Trang tổng quan về vị trí và tốc độ

Bây giờ bạn đã thiết lập dự án của mình và dữ liệu đang chạy sẽ được gửi đến Trạng thái ban đầu. Bạn sẽ có dữ liệu GPS và dữ liệu tốc độ. Bạn có thể sử dụng dữ liệu GPS trong Tile bản đồ để theo dõi vị trí. Đối với Ngói bản đồ, hãy đảm bảo chọn hộp kiểm Vẽ Đường dẫn để theo dõi vị trí của bạn được lập bản đồ giống như bảng điều khiển ở trên. Bạn có thể đưa dữ liệu tốc độ của mình vào biểu đồ đường để xem tốc độ theo thời gian.
Đề xuất:
Theo dõi & theo dõi các cửa hàng nhỏ: 9 bước (có hình ảnh)

Theo dõi & theo dõi cho các cửa hàng nhỏ: Đây là một hệ thống dành cho các cửa hàng nhỏ được cho là gắn vào xe đạp điện hoặc xe tay ga điện tử để giao hàng trong phạm vi ngắn, ví dụ như một tiệm bánh muốn giao bánh ngọt. Theo dõi và theo dõi nghĩa là gì? Theo dõi và theo dõi là một hệ thống được sử dụng bởi ca
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino: 6 bước

Time Cube - Arduino Time Tracking Gadget: Tôi muốn đề xuất cho bạn một dự án arduino đơn giản nhưng thực sự hữu ích để theo dõi các sự kiện thời gian bằng cách lật một số tiện ích khối thông minh. Lật nó sang " Làm việc " > " Tìm hiểu " > " Việc nhà " > " Phần còn lại " bên và nó sẽ tính
Theo dõi thời tiết M5Stack M5stick C dựa trên ESP32 với DHT11 - Theo dõi nhiệt độ độ ẩm & chỉ số nhiệt trên M5stick-C với DHT11: 6 bước

Theo dõi thời tiết M5Stack M5stick C dựa trên ESP32 với DHT11 | Theo dõi nhiệt độ độ ẩm và chỉ số nhiệt trên M5stick-C Với DHT11: Xin chào các bạn, trong phần hướng dẫn này, chúng ta sẽ học cách giao tiếp cảm biến nhiệt độ DHT11 với m5stick-C (một bảng phát triển của m5stack) và hiển thị nó trên màn hình của m5stick-C. Vì vậy, trong hướng dẫn này, chúng ta sẽ đọc nhiệt độ, độ ẩm & nhiệt tôi
Công cụ theo dõi GPS thời gian thực tự chế (SIM800L, Ublox NEO-6M, Arduino): 8 bước

Công cụ theo dõi GPS thời gian thực tự chế (SIM800L, Ublox NEO-6M, Arduino): Vậy bạn đã có một mô-đun GSM nằm xung quanh như tôi chưa? Cũng là một thiết bị theo dõi GPS? Chúng tôi cũng nghĩ như vậy! Trong phần hướng dẫn này, tôi sẽ cố gắng hướng dẫn bạn cách hoàn thành mục tiêu từ góc nhìn của một người mới. Vì tôi không có kiến thức về kỹ thuật điện trước đây (để
Hộp não: Theo dõi khối lượng thần kinh theo thời gian: 20 bước

Hộp não: Theo dõi khối lượng thần kinh theo thời gian: Việc tiến vào biên giới của cuộc sống con người lâu hơn đã làm gia tăng các loại bệnh mà các nền văn minh trước chúng ta chưa từng thấy. Trong số này, bệnh Alzheimer đã ảnh hưởng đến khoảng 5,3 triệu người Mỹ cao tuổi còn sống vào năm 2017, hay khoảng 1/10 e