Bonjour,
Suite à des soucis d’alimentation d’un RPI 4B 8Go avec carte HAT Adeept (pour ultrasonic, caméra et servomoteurs) montés sur une plateforme robotique ROS2 « irobot Create3 » par un cordon usbc/usbc de 1m20 de long acheté au Leclerc du bourg (pas trouvé moins long et cher en plus).
OS sur SSD Sandisk : raspberrypiOS bullseye arm64
test trouvé sur :
test_pi.sh
#!/bin/bash
function throttleCodeMask {
perl -e "printf \"%s\", $1 & $2 ? \"$3\" : \"$4\""
}
# Rendre le code limité lisible
#
# Voir la documentation de la méthode 'get_throttled' sur: https://www.raspberrypi.org/documentation/raspbian/applications/vcgencmd.md
#
function throttledToText {
throttledCode=$1
throttleCodeMask $throttledCode 0x80000 "Limite de température matérielle ateinte, " ""
throttleCodeMask $throttledCode 0x40000 "Un étranglement s'est produit, " ""
throttleCodeMask $throttledCode 0x20000 "La fréquence ARM est limitée, " ""
throttleCodeMask $throttledCode 0x10000 "une sous-tension s'est produite, " ""
throttleCodeMask $throttledCode 0x8 "Limite de température matérielle active, " ""
throttleCodeMask $throttledCode 0x4 "Etranglement en cours, " ""
throttleCodeMask $throttledCode 0x2 "Fréquence ARM limitée, " ""
throttleCodeMask $throttledCode 0x1 "Sous-tension détectée, " ""
}
# Couper Sysbench si il est interrompu
trap 'kill -HUP 0' EXIT
sysbench --test=cpu --cpu-max-prime=10000000 --num-threads=4 run > /dev/null &
maxfreq=$(( $(awk '{printf ("%0.0f",$1/1000); }' < /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq) -15 ))
# Lecture des informations système, les afficher et boucler
while true; do
temp=$(vcgencmd measure_temp | cut -f2 -d=)
real_clock_speed=$(vcgencmd measure_clock arm | awk -F"=" '{printf ("%0.0f", $2 / 1000000); }' )
sys_clock_speed=$(awk '{printf ("%0.0f",$1/1000); }' </sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)
voltage=$(vcgencmd measure_volts | cut -f2 -d= | sed 's/000//')
throttled_text=$(throttledToText $(vcgencmd get_throttled | cut -f2 -d=))
echo "$temp $sys_clock_speed / $real_clock_speed MHz $voltage - $throttled_text"
sleep 5
done
Test sur plateforme create3 (avec cordon 1m20)
pi@rpiBullseye64:~/scripts $ sudo ./test_pi.sh
WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options.
46.2'C 1800 / 1800 MHz 0.9260V - Un étranglement s'est produit, une sous-tension s'est produite,
49.6'C 1800 / 1800 MHz 0.9260V - Un étranglement s'est produit, une sous-tension s'est produite,
50.1'C 1800 / 1800 MHz 0.9260V - Un étranglement s'est produit, une sous-tension s'est produite,
45.2'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.3'C 800 / 800 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.3'C 700 / 700 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.3'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.3'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
42.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.3'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
44.3'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.8'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
43.3'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
42.8'C 700 / 700 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
...
Test alimentation standard 220VAC/5VDC
idem avec 2 x batteries lithium 18650 3.7V.
idem par câble USBa /USBc raccordé sur mon labtop (câble d’alimentation de mon smartphone)
pi@rpiBullseye64:~/scripts $ sudo ./test_pi.sh
WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options.
38.9'C 1000 / 1000 MHz 0.8600V -
47.7'C 1800 / 1800 MHz 0.9260V -
49.6'C 1800 / 1800 MHz 0.9260V -
50.1'C 1800 / 1800 MHz 0.9260V -
45.7'C 600 / 600 MHz 0.8600V -
45.2'C 600 / 600 MHz 0.8600V -
44.3'C 600 / 600 MHz 0.8600V -
43.8'C 600 / 600 MHz 0.8600V -
44.3'C 600 / 600 MHz 0.8600V -
44.3'C 800 / 800 MHz 0.8600V -
Dernier montage pour tester câble USBc/USBc : alimentation d’un raspberrypi 4B 8Go avec HAT par battteries lithium sur HAT, récupération alim sur USBc pour alimenter deuxième carte Raspi4B avec HAT sur USBc (pas trouvé pire ni mieux d’ailleurs) Le pb étant que les batteries alimentent 2 « Raspi avec leur HAT ».
pi@rpiBullseye64:~/scripts $ sudo ./test_pi.sh
WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options.
37.0'C 1200 / 1200 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
40.4'C 1800 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite, Etranglement en cours, Sous-tension détectée,
40.9'C 1800 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite, Etranglement en cours, Sous-tension détectée,
41.8'C 1800 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite, Etranglement en cours, Sous-tension détectée,
41.3'C 1800 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite, Etranglement en cours, Sous-tension détectée,
41.3'C 1800 / 1800 MHz 0.9260V - Un étranglement s'est produit, une sous-tension s'est produite,
40.4'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
39.9'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
39.4'C 800 / 800 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
39.9'C 700 / 700 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
40.4'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
40.4'C 600 / 600 MHz 0.8600V - Un étranglement s'est produit, une sous-tension s'est produite,
Mes conclusions : Avant de mettre en cause la carte interface du Create3 je cois qu’il faut que je me rachète un meilleur cordon plus court USBc/USBc
Je m’interroge sur les résultats hors alimentation du Create3 tension basse ? chute fréquence CPU?