WWW.USBINOV.COMPiranti USB untuk PC, Laptop dan Raspberry Pi.

Cara Menampilkan Suhu CPU Dan Memori Raspberry Pi Pada LCD Menggunakan REBOL

Setelah pada postingan sebelumnya saya menyampaikan Catatan Eksperimen Raspberry Pi tentang bagaimana memrogram LCD pada Raspberry Pi menggunakan REBOL, maka pada catatan kali ini akan saya sampaikan hasil eksperimen Raspberry Pi – LCD untuk menampilkan informasi sistem. Bukan informasi yang lengkap, cuma menampilkan informasi SUHU CPU Raspberry Pi dan MEMORI Raspberry Pi (used-memory dan free-memory).

Nah, langsung saja kita bahas tentang bagaimana cara menampilkan informasi SUHU CPU Raspberry Pi.

Cara Menampilkan Suhu CPU Raspberry Pi Dengan Perintah vcgencmd

Dengan perintah vcgencmd, kita dapat menampilkan informasi SUHU CPU Raspberry Pi, caranya adalah sebagai berikut:

  1. Ketik $ vcgencmd measure_temp
  2. Tekan ENTER
  3. Akan ditampilkan informasi berupa teks:
    temp=42.7'C

Mudah, bukan? Nah, sekarang kita akan mencoba melakukannya menggunakan REBOL.

REBOL memiliki fungsi call yang berfungsi untuk memanggil program dan mengeksekusi program tersebut selayaknya shell. Contohnya seperti ini:

>> call "vcgencmd measure_temp"

Tapi ada satu kekurangan fungsi call pada REBOL3 versi Raspi dibandingkan dengan REBOL3 versi x86. Kekurangannya adalah pada REBOL3 versi Raspi, fungsi call tidak memiliki refinement /OUTPUT untuk mengarahkan/menangkap keluaran yang dihasilkan/ditampilkan oleh program yang dipanggil. Pada REBOL3 versi x86, kita bisa menyimpan keluaran program yang dipanggil pada variabel yang kita tentukan:

>> s: call/output "cat /proc/cpuinfo"

Lantas bagaimana kita akan menangkap keluaran yang dihasilkan/ditampilkan oleh program yang kita panggil? Mudah saja, kita bisa mengarahkan output program ke file menggunakan operator redirection, seperti ini:

>> call "vcgencmd measure_temp > temp.txt"

Selanjutnya kita bisa membaca data file temp.txt dan menampilkannya dengan perintah:

>> print to string! read %temp.txt

Dan untuk mengambil data temp.txt dan menyimpannya dalam variabel perintahnya adalah sbb:

>> t: read %temp.txt

Cara Menampilkan Memori Terpakai dan Sisa Memori Raspberry Pi

Untuk menampilkan informasi memori kita bisa menggunakan vcgencmd, caranya adalah dengan memberikan parameter get_mem arm atau get_mem cpu.

$ vcgencmd get_mem arm

Akan tetapi pada eksperimen ini saya menggunakan perintah free. Caranya adalah sebagai berikut:

$ free
          total       used       free     shared    buffers     cached
Mem:     447864     230692     217172          0      41860     104720
-/+ buffers/cache:      84112     363752
Swap:       102396          0     102396

Untuk menangkap data yang dihasilkan oleh program free, caranya sama seperti di atas yakni dengan mengarahkan output ke file menggunakan operator redirection. Berikut adalah program REBOL-nya.

>> call "free > mem.txt"
>> m: read %mem.txt
>> pm: parse trim/lines m " "
>> used-mem: pm/9
>> free-mem: pm/10

Menampilkan Suhu CPU dan Info Memori Ke LCD

Kita sudah hampir sampai di penghujung catatan eksperimen ini. Sekarang akan saya berikan bagian kode program REBOL yang berfungsi mengambil data informasi SUHU CPU dan MEMORI Raspberry Pi dan kemudian menampilkannya ke LCD secara lengkap.

;******************
;  Demo LCD Raspi
;******************
init-gpio LCD-GPIO
init-lcd
puts-lcd "My Raspberry Pi "
gotoxy-lcd 1 1
puts-lcd "Mini System-Info"
wait 5
forever [
	call/wait "vcgencmd measure_temp > temp.txt"
	if exists? %temp.txt [t: read %temp.txt]
	pt: parse t "=C"

	call/wait "free > mem.txt"
	if exists? %mem.txt [m: read %mem.txt]
	pm: parse trim/lines m " "
	used-mem: pm/9
	free-mem: pm/10
	gotoxy-lcd 1 0
	puts-lcd ajoin ["CPU Temp: " pt/2 "C"]
	gotoxy-lcd 1 1
	puts-lcd ajoin ["U" used-mem " F" free-mem " "]
	wait 3
]

Kode program di atas pertama-tama akan menampilkan tulisan seperti ditunjukkan oleh foto di atas dan menunggu selama 5 detik sebelum kemudian menampilkan SUHU CPU pada baris pertama dan MEMORI pada baris kedua seperti foto berikut ini.

RASPI SUHU MEMORI LCD

Pada foto di atas ditunjukkan bahwa memori terpakai adalah 217476 byte dan sisa memori yang bisa digunakan adalah 230388 byte.

Menarik, bukan?

Informasi seperti suhu dan memori adalah informasi yang penting untuk dipertimbangkan dalam pemrograman maupun pemakaian Raspberry Pi. Dengan mengetahui SUHU CPU, maka kita bisa memberikan sinyal berupa bunyi buzzer atau bahkan memerintahkan Raspberry Pi untuk SHUTDOWN ketika suhu mencapai 70’C misalnya.

Sekian dan Semoga Bermanfaat

Nah, sekian dulu Catatan Eksperimen Raspberry Pi kali ini. Nantikan catatan eksperimen yang lain hanya di blog Raspberry Pi Notes.

Jika Anda berminat dengan file-file pada catatan eksperimen ini, silakan menuliskan komentar pada bagian bawah postingan ini.

Selamat berkarya.

No Comments

Add a Comment

Your email address will not be published. Required fields are marked *