Это старая версия документа.
Содержание
Подготовка ПЛК на базе компьютера Raspberry Pi
Проверено на оборудовании:
- Raspberry Pi 2 Model B
- Raspberry Pi 3 Model B
корпуса
power
sdcard
Скачать образ Raspbian Lite https://www.raspberrypi.org/downloads/raspbian/
df -h sudo umount /dev/sdb1 sudo umount /dev/sdb2 sudo dd bs=4M if=2016-09-23-raspbian-jessie-lite.img of=/dev/sdb conv=fsync sync
raspi-config
user: pi pass: raspberry
sudo raspi-config
- Change User Password / jradmin
- Network Options / Hostname / jrobo
- Boot Options / Wait for Network at Boot / No
- Localization Options
- Change Locale / Select:
- en_US.UTF-8 UTF-8 (default)
- ru_RU.UTF-8 UTF-8
- Change Timezone/ Asia-Barnaul
- Change Keyboard Layout/ American US
- Interfaciong Options
- SSH / Yes
- I2C / Yes
- Serial
- NO - login over serial disabled
- Yes - serial port enabled
Для дистрибутива stretch (апрель 2019) также требуется отключить блютус и поиграть с частотами в /boot/config.txt - говенное решение пользовать последовательный порт на raspberry, также последовательные порты мапятся на /dev/serial0, и /dev/serial1 - добро пожаловать к танцу с бубном Алексей, сделай своё решение, раз тебе это говенное.
sudo apt-get install mc telnet
sudo mcedit /etc/default/keyboard XKBLAYOUT="us"
sudo mcedit /etc/ssh/sshd_config UseDNS no
static ip
sudo mcedit /etc/dhcpcd.conf
interface eth0 static ip_address=192.168.2.210/24 static routers=192.168.2.1 static domain_name_servers=192.168.2.1
serial port
rtc ds3231
sudo apt-get install python-smbus i2c-tools sudo apt-get purge fake-hwclock ntp sudo apt-get install ntpdate
Add at the end:
sudo mcedit /boot/config.txt dtoverlay=i2c-rtc,ds3231
Add the line (above “exit 0”):
sudo mcedit /etc/rc.local /sbin/hwclock -s
Change:
sudo mcedit /etc/init.d/hwclock.sh HWCLOCKACCESS=no
reboot
sudo date -s "10 OCTOBER 2016 10:00:00" sudo hwclock -w
java
Скачать JDK 8 (Linux ARM v6/v7 Hard Float ABI) здесь и скопировать в /data
. Номер версии (101) заменить на нужный.
sudo su mkdir /usr/lib/jvm mv /data/jdk-8u101-linux-arm32-vfp-hflt.tar.gz /usr/lib/jvm cd /usr/lib/jvm tar -xzvf jdk-8u101-linux-arm32-vfp-hflt.tar.gz rm jdk-8u101-linux-arm32-vfp-hflt.tar.gz ln -s jdk1.8.0_101 java-8-oracle
temperature
- temperature.sh
#!/bin/bash cpuTemp0=$(cat /sys/class/thermal/thermal_zone0/temp) cpuTemp1=$(($cpuTemp0/1000)) cpuTemp2=$(($cpuTemp0/100)) cpuTempM=$(($cpuTemp2 % $cpuTemp1)) echo CPU temp"="$cpuTemp1"."$cpuTempM"'C" echo GPU $(/opt/vc/bin/vcgencmd measure_temp)