Оглавление:
- Шаг 1. Прошивка жесткого диска RaspberriPi / установка необходимого программного обеспечения (с использованием Ubuntu Linux)
- Шаг 2: Требуется поставка
- Шаг 3. Распечатайте корпус
- Шаг 4: Сборка путевого компьютера
- Шаг 5: Окончательная сборка
- Шаг 6: Окончательная сборка (продолжение…)
- Шаг 7: Конфигурация / установка программного обеспечения
- Шаг 8: Установите средства мониторинга вождения и ведение журнала БД
- Шаг 9: Запуск скриптов Crontab - Pi и Root
- Шаг 10: Настройте подключение к Weather и Dashboard (необязательно)
- Шаг 11: Установите на приборную панель / установите гигростат и готово
Видео: TripComputer - маршрутный компьютер с GPS и модуль погоды для вашего автомобиля: 11 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Классный проект Raspberry Pi, в котором используется модуль подключения GPS и 2 небольших дисплея Digole, чтобы на приборной панели был навигационный компьютер.
Шаг 1. Прошивка жесткого диска RaspberriPi / установка необходимого программного обеспечения (с использованием Ubuntu Linux)
Скачать "РАСПБИАНСКОЕ ДЖЕССИ ЛАЙТ ВЕРСИИ"
Создайте новый жесткий диск для DashboardPI
Вставьте microSD в свой компьютер через USB-адаптер и создайте образ диска с помощью команды dd
Найдите вставленную карту microSD с помощью команды df -h, отключите ее и создайте образ диска с помощью команды disk copy dd.
$ df -h / dev / sdb1 7,4 ГБ 32 КБ 7,4 ГБ 1% / media / XXX / 1234-5678
$ umount / dev / sdb1
Внимание: убедитесь, что команда абсолютно точна, вы можете повредить другие диски с помощью этой команды.
if = расположение файла изображения RASPBIAN JESSIE FULL VERSION = расположение вашей карты microSD
$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img of = / dev / sdb (примечание: в данном случае это / dev / sdb, / dev / sdb1 был существующим заводским разделом на microSD)
Настройка вашего RaspberriPi
Вставьте новую карту microSD в raspberrypi и включите его с помощью монитора, подключенного к порту HDMI.
Авторизоваться
пользователь: pi pass: raspberry
Измените пароль своей учетной записи для безопасности (с терминала)
sudo passwd pi
Включить дополнительные параметры RaspberriPi (из терминала)
sudo raspi-config
Выберите: 1 Развернуть файловую систему
9 Дополнительные параметры
Имя хоста A2 измените его на "TripComputer"
A4 SSH Включить SSH-сервер
A7 I2C Включить интерфейс i2c
Включить английскую / американскую клавиатуру
Судо нано / и т. д. / по умолчанию / клавиатура
Измените следующую строку: XKBLAYOUT = "us"
Перезагрузите PI, чтобы изменения раскладки клавиатуры / изменение размера файловой системы вступили в силу
$ sudo shutdown -r сейчас
Автоматическое подключение к вашему Wi-Fi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Добавьте следующие строки, чтобы ваш raspberrypi автоматически подключался к домашнему Wi-Fi (если ваша беспроводная сеть называется «linksys», например, в следующем примере)
network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Перезагрузите PI, чтобы подключиться к сети Wi-Fi.
$ sudo shutdown -r сейчас
Теперь, когда ваш PI наконец находится в локальной сети, вы можете удаленно войти в него через SSH. Но сначала вам нужно получить текущий IP-адрес.
$ ifconfig Найдите "inet addr: 192.168. XXX. XXX" в выводе следующей команды для IP-адреса вашего PI
Перейдите на другую машину и войдите в свой raspberrypi через ssh
$ ssh [email protected]. XXX. XXX
Начать установку необходимых пакетов
$ sudo apt-get update && sudo apt-get upgrade
$ sudo apt-get install build-essential git gpsd gpsd-clients i2c-tools libi2c-dev python3 python3-pip python-dev python-gps python-imaging python-pip python-smbus rpi.gpio vim python-psutil
$ sudo pip установить RPi. GPIO
Обновить настройки местного часового пояса
$ sudo dpkg-reconfigure tzdata
выберите свой часовой пояс с помощью интерфейса
Установите команду simple directory l [необязательно]
vi ~ /.bashrc
добавьте следующую строку:
псевдоним l = 'ls -lh'
источник ~ /.bashrc
Исправить выделение синтаксиса по умолчанию VIM [необязательно]
Судо vi / и т. д. / vim / vimrc
раскомментируйте следующую строку:
синтаксис на
Шаг 2: Требуется поставка
2-дюймовый TFT ЖК-дисплей Digole с разрешением 320x240 пикселей (x2)
DHT11 гигростат
РаспберриПи Ноль
Adafruit GPS Breakout
52-миллиметровые 2-дюймовые манометры - используются для окантовки стекла / экрана
2 контейнера для установки манометра
Шаг 3. Распечатайте корпус
В папке «3DPrint /» этого проекта распечатайте файл gauges-final.stl, который будет создавать окружение дисплея Digole, необходимое для установки двух экранов внутри контейнера для установки датчика.
Шаг 4: Сборка путевого компьютера
Подключите следующие устройства к контактам на Pi Zero
Дигол (каждый): 3 В / GND / SDA / SCL
DHT11: 5 В / GPIO 16 (36) / земля
Подключите USB-модуль GPS к RaspberriPi через соединения HW UART. Использование HW UART для модуля GPS требует следующего, чтобы освободить соединение UART на вашем Pi.
«Крест» - подключите контакты TX и RX от модуля GPS к RPi TX (GPIO 14/8 контактов) и RX (GPIO 15/10 контактов) - [TX идет на RX на устройстве и наоборот.] Подключите RPi 5V к контакту VIN и контакт GND модуля GPS к доступному контакту RPi GND.
Шаг 5: Окончательная сборка
Вырежьте кусок дерева, чтобы его нижняя часть удерживала компоненты внутри корпуса датчика.
Возьмите 2 52-миллиметровых 2-дюймовых манометра и отрежьте верхнюю часть, мы просто используем стекло и окантовку для установки наших собственных дисплеев, дисплеев Digole. Приклейте их на место горячим клеем.
Шаг 6: Окончательная сборка (продолжение…)
Используя схему выше, соедините компоненты, используя припой, чтобы сделать все прочным и долговечным.
Установите компоненты внутри корпуса с двойным манометром, используйте трехмерную печатную окантовку, чтобы квадратные дисплеи Digole подходили к окнам круглых манометров.
Шаг 7: Конфигурация / установка программного обеспечения
Настройте Pi для использования модуля GPS на UART
sudo vi /boot/cmdline.txt
изменение:
dwc_otg.lpm_enable = 0 console = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 elevator = крайний срок rootwait
к:
dwc_otg.lpm_enable = 0 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 elevator = крайний срок rootwait
(например, удалите console = ttyAMA0, 115200 и, если есть, kgdboc = ttyAMA0, 115200)
Обратите внимание, что вы можете увидеть console = serial0, 115200 или console = ttyS0, 115200 и должны удалить эти части строки, если они есть.
Выполните следующие команды:
sudo systemctl stop [email protected]
sudo systemctl отключить [email protected]
Установка модуля GPS Для тестирования принудительно подключите USB-устройство к GPS
sudo gpsd / dev / ttyS0 -F /var/run/gpsd.sock
sudo systemctl stop gpsd.socket
sudo killall gpsd
sudo dpkg-reconfigure gpsd
sudo vi / и т. д. / по умолчанию / gpsd
# Настройки по умолчанию для gpsd. START_DAEMON = "true" GPSD_OPTIONS = "- n" DEVICES = "/ dev / ttyS0" USBAUTO = "false" GPSD_SOCKET = "/ var / run / gpsd.sock"
Убедитесь, что команда работает
cgps -s
DHT11 Установить компакт-диск ~
git clone
cd Adafruit_Python_DHT /
sudo python setup.py установить
sudo python ez_setup.py
CD примеры /
vi simpletest.py
Измените следующую строку:
sensor = Adafruit_DHT. DHT11
Закомментируйте строку
pin = 'P8_11'
Раскомментируйте строку и измените пин-код на 16.
контакт = 16
Запустить тест
python simpletest.py
Вы должны увидеть метрические значения температуры и влажности, отображаемые в командной строке.
Установка и запуск скриптов cd ~
git clone
Шаг 8: Установите средства мониторинга вождения и ведение журнала БД
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Добавьте в конец файла следующую строку:
локальный пароль для всех пи
sudo -i -u postgres
psql
создать пароль для роли pi 'пароль здесь';
изменить логин роли pi;
изменить роль pi суперпользователя;
du
(вы должны увидеть своего пользователя PI с предоставленными разрешениями)
создать базу данных driving_statistics;
q
выход
psql -d статистика_вождения
Выполните следующие запросы:
СОЗДАТЬ ТАБЛИЦУ driving_stats (id serial, time timestamp без часового пояса NOT NULL, new_trip_start timestart без часового пояса NULL, gps_latitude с двойной точностью, gps_longitude с двойной точностью, gps_altitude real, gps_speed real, gps_climb real, gps_track real, locale_adare text, locale_adare text, locale_adare text, locale_county text, locale_country text, locale_zipcode text, inside_temp real, inside_hmidty real, weather_time timestamp, weather_summary text, weather_icon text, weather_apparentTemperature real, weather_humidity real, weather_precipIntensity real, weather_precipability real, weather_wind);
СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС time_idx ON driving_stats (time);
Чтобы заставить GPSD работать с подключением UART при перезагрузке, требуется взлом sudo su
crontab -e
@reboot / bin / sleep 5; killall gpsd
@reboot / bin / sleep 10; / usr / sbin / gpsd / dev / ttyS0 -F /var/run/gpsd.sock
Создайте папку журналов для сохранения данных mkdir / home / pi / TripComputer / computer / logs
Шаг 9: Запуск скриптов Crontab - Pi и Root
Настройте скрипты для запуска при загрузке
crontab -e
Добавьте следующие строки
@reboot / bin / sleep 15; nohup python /home/pi/TripComputer/computer/mtk3339.py> /home/pi/TripComputer/computer/mtk3339.log 2> & 1
@reboot / bin / sleep 18; nohup python /home/pi/TripComputer/computer/driving.py> /home/pi/TripComputer/computer/driving.log 2> & 1
@reboot / bin / sleep 19; nohup python /home/pi/TripComputer/computer/address.py> /home/pi/TripComputer/computer/address.log 2> & 1
@reboot / bin / sleep 30; nohup python /home/pi/TripComputer/computer/gauges.py> /home/pi/TripComputer/computer/gauges.log 2> & 1
@reboot / bin / sleep 21; nohup python /home/pi/TripComputer/computer/locale.py> /home/pi/TripComputer/computer/locale.log 2> & 1
@reboot / bin / sleep 22; nohup python /home/pi/TripComputer/computer/notification.py> /home/pi/TripComputer/computer/notification.log 2> & 1
@reboot / bin / sleep 24; nohup python /home/pi/TripComputer/computer/temperature.py> /home/pi/TripComputer/computer/temperature.log 2> & 1
@reboot / bin / sleep 25; nohup python /home/pi/TripComputer/computer/upload.py> /home/pi/TripComputer/computer/upload.log 2> & 1
@reboot / bin / sleep 26; nohup python /home/pi/TripComputer/computer/weather.py> /home/pi/TripComputer/computer/weather.log 2> & 1
@reboot / bin / sleep 30; nohup python /home/pi/TripComputer/computer/stats.py> /home/pi/TripComputer/computer/stats.log 2> & 1
Настройте crontab пользователя root, чтобы убедиться, что модуль GPS подключается правильно
sudo su
crontab -e
Добавьте следующие строки
@reboot / bin / sleep 5; systemctl остановить gpsd.socket
@reboot / bin / sleep 8; killall gpsd
@reboot / bin / sleep 12; / usr / sbin / gpsd / dev / ttyS0 -F /var/run/gpsd.sock
Шаг 10: Настройте подключение к Weather и Dashboard (необязательно)
Наконец, создайте локальные настройки, необходимые для запуска бортового компьютера
Найдите файл /computer/includes/settings.shadow.py
Создайте свою собственную версию файла настроек с именем просто settings.py
Прогноз.io Ключ API для локальной информации о погоде weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'ЗДЕСЬ КЛЮЧ API'
если у вас запущен проект концентратора устройств (https://github.com/khinds10/DeviceHub) devicesServer = 'https://my.server.com'
если у вас запущен проект телефона приборной панели (https://github.com/khinds10/RetroDashboard) dashboardServer = 'https://my.server.com'
Шаг 11: Установите на приборную панель / установите гигростат и готово
Крепление на тире
Установите гигростат вдали от прямых солнечных лучей
Перезагрузите свой RPi, и вы должны быть готовы к работе!
Рекомендуемые:
Брелок для ключей для экстренной эвакуации из автомобиля: 11 шагов (с изображениями)
Брелок для аварийного спасения автомобиля: Автомобильные аварии. Ой! Лучший способ избежать аварии - использовать безопасные методы вождения и всегда обращать внимание на то, куда вы собираетесь, и на другие автомобили вокруг вас. Однако, несмотря на все ваши усилия, вы не контролируете другой двигатель
Простой способ получить данные с вашего автомобиля: 4 шага
Простой способ получить данные с вашего автомобиля: здесь мы представляем простой способ получить данные с разъема OBD-II вашего автомобиля, а также данные GPS. OBD-II, вторая бортовая диагностика, - это автомобильный термин, обозначающий способность автомобиля к самодиагностике и составлению отчетов. Системы OBD дают
Модуль безопасности и взлома своими руками для вашего ноутбука (TfCD): 7 шагов (с изображениями)
Модуль DIY Security and Hacking для вашего ноутбука (TfCD): регулярные новости о крупномасштабном взломе и правительственном слежении заставляют все больше людей наклеивать скотч на свои веб-камеры. Но почему в 2017 году глупая лента - единственное, что может гарантировать, что за нами никто не наблюдает?
Сигнализация для мобильного телефона для мотоцикла, автомобиля или чего угодно: 7 шагов (с изображениями)
Сигнализация для мобильного телефона для мотоцикла, автомобиля или чего угодно: мне надоели обычные будильники, издающие много шума, и никто больше на них не обращает внимания. Также не зная, что кто-то испортил мой велосипед, потому что я был слишком далеко, чтобы услышать сигнал тревоги. Поэтому я решил включить этот сигнал с помощью старого мобильного телефона
Сделайте амортизаторы вашего радиоуправляемого автомобиля короче для лучшей управляемости на высоких скоростях: 5 шагов
Укорочите амортизаторы радиоуправляемых машин для лучшей управляемости на высоких скоростях: в этой инструкции я покажу вам, как уменьшить ударные нагрузки, чтобы вы могли приблизить свой автомобиль к земле, чтобы вы могли совершать повороты на более высоких скоростях, не взмахивая руками. другое Инструкции по обслуживанию амортизаторов вашего автомобиля, так что