Система охлаждения Одноплатника

Не требует установки программ или изменения файлов

Модераторы: immortal, newz20

Ответить
MrReD32
Сообщения: 13
Зарегистрирован: Пт янв 10, 2020 11:32 am
Благодарил (а): 1 раз
Поблагодарили: 0

Система охлаждения Одноплатника

Сообщение MrReD32 » Ср янв 27, 2021 4:19 pm

Доброе время суток!!! Есть ORANGE PI на нем gpio и кулер, как можно реализовать в Majordomo автоматическое включение кулера по температуре процессора.
lihodeev
Сообщения: 146
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 41 раз
Поблагодарили: 8 раз

Re: Система охлаждения Одноплатника

Сообщение lihodeev » Ср янв 27, 2021 5:20 pm

MrReD32 писал(а):
Ср янв 27, 2021 4:19 pm
Доброе время суток!!! Есть ORANGE PI на нем gpio и кулер, как можно реализовать в Majordomo автоматическое включение кулера по температуре процессора.
первая ссылка в гугле https://3deshnik.ru/blogs/wolfs_sg/avto ... a-orangepi МД причем?
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
MrReD32
Сообщения: 13
Зарегистрирован: Пт янв 10, 2020 11:32 am
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Система охлаждения Одноплатника

Сообщение MrReD32 » Чт янв 28, 2021 11:55 am

первая ссылка в гугле https://3deshnik.ru/blogs/wolfs_sg/avto ... a-orangepi МД причем?
У меня в данный момент так и реализовано но хотелось бы чтоб управлял этим Majordomo c возможностью отключения вентилятора с панели MD
PAV
Сообщения: 926
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 67 раз
Поблагодарили: 90 раз

Re: Система охлаждения Одноплатника

Сообщение PAV » Чт янв 28, 2021 12:38 pm

Вот смотри, как у меня получаются данные с одноплатника.
Я думаю разберешься, если нет, спрашивай

Код: Выделить всё

//CPU temp
$cpu_temp=exec('cat /sys/devices/platform/sunxi-i2c.0/i2c-0/0-0034/temp1_input') / 1000;
$cpu_temp=round($cpu_temp,1);
setGlobal("ThisComputer.CPU_temp",$cpu_temp);

//CPU usage
$cpu_usage=exec("top -bn 1 | awk '{print $9}' | tail -n +8 | awk '{s+=$1} END {print s}'");
setGlobal("ThisComputer.CPU_usage",$cpu_usage);

//System uptime
$sys_uptime=exec('uptime');
$sys_uptime = explode(' up ', $sys_uptime);
$sys_uptime = explode(',', $sys_uptime[1]);
$sys_uptime = trim($sys_uptime[0]);
setGlobal("ThisComputer.System_uptime",$sys_uptime);

//Memory usage/total
$mem=shell_exec("free -m|grep Mem|awk '{print $2,$3,$4}'");
$mem=explode(" ",$mem);
$mem="Всего: ".$mem[0]." Занято: ".$mem[1]." Доступно: ".$mem[2];
setGlobal("ThisComputer.System_memory",$mem);

//HDD /dev/sda temp
$hdd_temp=exec("hddtemp /dev/sda3");
preg_match('/[^:]*\:[ ]*[^:]*\:[ ]*([0-9+-.]*)/i',$hdd_temp,$arr);
$hdd_temp = trim($arr[1]);
$hdd_temp = str_replace('+','',$hdd_temp);
setGlobal("ThisComputer.HDD_temp",$hdd_temp);


//HDD free space
$disk=shell_exec("df -h|grep sda3|awk '{print $2,$3,$5}'"); // p.s. sda1 нужно изменить на свой диск
$disk=explode(" ",$disk);
$disk=$disk[1]."/".$disk[0]." ( ".$disk[2].")";
setGlobal("ThisComputer.HDD_freespace",$disk);
MrReD32
Сообщения: 13
Зарегистрирован: Пт янв 10, 2020 11:32 am
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Система охлаждения Одноплатника

Сообщение MrReD32 » Ср фев 17, 2021 10:32 am

Вот смотри, как у меня получаются данные с одноплатника.
Я думаю разберешься, если нет, спрашивай
Не совсем понятно что этот код делает? Можно поподробнее
PAV
Сообщения: 926
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 67 раз
Поблагодарили: 90 раз

Re: Система охлаждения Одноплатника

Сообщение PAV » Ср фев 17, 2021 11:06 am

Это код получает данные одноплатника - температуру, загрузку, память и т.д.
Дальше с этой инфой можно делать что угодно.
Ответить