Ante las consultas recibidas por parte de algunos de vosotros sobre como conocer la velocidad/frecuencia a la que trabaja el procesador de la Raspberry Pi, me he decidido a comentarlo en este post de manera que quede al alcance de cualquier usuario que pueda necesitarlo en el futuro.
A continuación os indico un par de instrucciones disponibles en Raspian, que os permitirán conocer la velocidad actual y la máxima alcanzable (por configuración) de una Raspberry Pi, útiles si necesitáis monitorizar el nivel de carga de vuestra Raspberry o experimentar haciendo Overclocking.

Velocidad cpu Raspberry Pi
Los resultados que se muestran se refieren a los de una Raspberry Pi 3 b+, por lo que es normal ver resultados diferentes si usáis otro modelo.
Para poder conocer la velocidad máxima alcanzable basta con teclear:
vcgencmd get_config arm_freq
Mostrará una información similar a la siguiente:
arm_freq=1400
Valor que en este caso representa los 1.4Ghz de una Raspberry Pi B+ , y que coincide con el informado en el fichero de configuración /boot/config.txt .
Para conocer la velocidad actual de trabajo se ha de introducir la siguiente instrucción:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
Que en un momento de uso del 100% de procesador indicará lo siguiente:
1400000
Y que en circunstancias normales de trabajo, o en casos excepcionales de alta temperatura o problemas de alimentación, mostrará algo similar a esto:
600000
Esta información tiene más importancia de la que podáis pensar a la hora de tomar decisiones, ya que podemos estar tomando como referencia la carga del procesador en %, ver que está al 100% y pensar que nuestra Raspberry está trabajando al máximo de sus posibilidades, y en realidad estar trabajando a ‘medio gas’ por haber bajado automáticamente la velocidad del procesador como medida de protección al haber alcanzado una temperatura más alta de la deseable, o no recibir la suficiente potencia desde la fuente de alimentación.
A continuación os dejo un pequeño programa escrito en ¿Qué es Python?, que os permitirá integrar y manejar este dato en vuestros programas:
def get_cpufreq():
tempfrq = open(«/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq», «r»)
cpu_freq = tempfrq.read()
tempfrq.close()
return float(cpu_freq)/1000
print ‘Freq.Cpu ‘ + str(get_cpufreq())
Os animo a crear un proyecto en el que por ejemplo le consultéis a vuestra Raspberry la velocidad a la que trabaja actualmente su procesador, enviándole un mensaje a través de Telegram. Podéis ver cómo enviar instrucciones a una Raspberry Pi a través de Telegram en otro post de este blog.
Hasta pronto.
Salu2
Pingback: Raspberry Pi: carga / uso del procesador, temperatura, memoria libre, dirección IP y uptime | Alteageek, tutoriales, raspberry pi y cisco, en español