DISUSUN OLEH:
172411088
172411088
Saya menyatakan bahwa laporan tugas akhir ini adalah hasil karya sendiri, kecuali
beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
ABSTRAK
iii
ABSTRACT
iv
Puji dan syukur dan terimkasih kehadirat Tuhan Yang Maha Esa, karena
dengan limpah rahmat dan karunianya penulis berhasil menyelesaikan tugas akhir 2
yang berjudul “Pengukur Suhu Tubuh Secara Tak Sentuh Menggunakan Sensor
Suhu IR Non Contact MLX90614 Berbasis Arduino Nano” ini pada waktu yang
telah ditetapkan.
Selama penulisan Tugas Akhir 2 ini, penulis menyadari akan kesalahan yang
mungkin terjadi, baik itu dari segi teknis, tata penyajian ataupun dari segi tata bahasa
oleh karena itu penulis bersedia mener`ima kritik dan saran yang membangun dai
pembaca dalam upaya perbaikan tugas akhir ini.
Akhir kata, penulis berharap semoga Tugas Akhir ini bermanfaat bagi siapa
pun yang membacanya.Semoga Tuhan Yang Maha Esa senantiasa memberikan
rahmat kepada kita semua.Amin.
vi
Halaman
PERNYATAAN ............................................................................................................ i
PENGESAHAN ............................................................................................................ ii
ABSTRAK .................................................................................................................... iii
ABSTRACT .................................................................................................................. iv
PENGHARGAAN ........................................................................................................ v
DAFTAR ISI ................................................................................................................. vii
DAFTAR GAMBAR .................................................................................................... ix
DAFTAR TABEL......................................................................................................... x
BAB I PENDAHULUAN
1.1. Latar Belakang................................................................................. 1
1.2. Rumusan Masalah............................................................................. 2
1.3. Batasan Masalah ............................................................................... 2
1.4. Tujuan Penulisan .............................................................................. 2
1.5. Manfaat Penulisan ............................................................................ 3
1.6. Sistematika Penulisan ....................................................................... 3
vii
DAFTAR PUSTAKA
LAMPIRAN
viii
ix
IC = Integrated Circuit
I/O = Input/Output
DC = Direct Current
GND = Ground
xi
BAB I : PENDAHULUAN
Berisi latar belakang permasalahan, batasan masalah, tujuan pembahasan, metodologi
pembahasan, sistematika penulisan dan relevansi dari penulisan laporan ini.
2.1 Arduino-Nano
Arduino adalah papan rangkaian elektronik (electronic board) open source yang di
dalamnya terdapat komponen utama yaitu, sebuah chip mikrokontroler. Mikrokontroller
sendiri adalah sebuah chip berupa IC (integrated Circuit) yang bisa diprogram
menggunakan komputer. Mikrokontroler terdapat di mana-mana seperti di dalam DVD
Player, Handphone, televisi, dll. Arduino adalah salah satu jenis rangkaian elektronik
yang mengadaptasikan dari mikrokontroler. Arduino dibuat untuk memudahkan
penggunaan mikrokontroler ke fungsi tertentu yang lebih spesifik. Bentuk, jumlah port,
dan mikrokontroler yang digunakan pada Arduino bermacam-macam tergantung pada
fungsi kegunaannya, seperti Arduino Uno R3, Arduino Mega 2560, Arduino Nano,
Arduino Lilypad, dll. Selain itu juga ada shield arduino, sensor, aktuator, modul, dan
mekanik robot yang didesain untuk digunakan bersama dengan Arduino board. Arduino
Nano adalah salah satu board berbasis mikrokontroler ATMega 328P dengan bentuk
yang mungil.Bentuk fisik dari Arduino Nano dapat dilihat pada Gambar 2.1 dengan
spesifikasi yang terdapat pada tabel 2.1.
Pin-pin pada Arduino Nano dapat dibagi ke dalam beberapa bagian tertentu, yaitu power
supply, input/output, dan komunikasi. Beberapa pin di antaranya memiliki fungsi
khusus. Berikut ini menunjukkan kegunaan dari setiap pinnya :
1. Power supplyadalah pin yang berhubungan langsung dengan sumber daya, baik dari
input daya maupun output daya Arduino.
Vinadalah pin untuk input daya dari luar dengan rentang tegangan7—12 V
GNDadalah pin untuk sumber daya negatif atau sebagai ground.
Pin 5Vadalah pin untuk output daya 5V dari Arduino Nano.
Pin 3.3Vadalah pin untuk output daya 3.3V dari Arduino Nano.
REF adalah pin yang dingunakan sebagai referensi mikrokontroler menggunakan
board shield
(https://lectronichub.com/en/arduino-and-family-c-3/arduino-nano-p-11)
2.2 Sensor
secara umum sensor didentifikasikan sebagai alat yang mampu menangkap
fenomena fisika atau kimia kemudian mengubahnya menjadi sinyal elektrik baik arus
listrik ataupun tegangan. Fenomena fisik yang mampu menstimulus sensor untuk
menghasilkan sinyal elektrik meliputi temperature, tekanan, gaya, medan magnet
cahaya, pergerakan dan sebagainya. Sensor suhu adalah alat yang dingunakan untuk
merubah besaran panas menjadi besaran listrik yang dapat dengan mudah dianalisis
besarnya. Karakteristik sensor suhu ditentukan dari sejauh mana sensor tersebut
memiliki kemampuan yang baik dalam mendeteksi setiap perubahan suhu yang ingin
dideteksinya. Kemampuan mendeteksi perubahan suhu meliputi:
(https://repository.usd.ac.id/34082/2/135114047_full.pdf)
Pin PWM dapat digunakan sebagai relai perubahan suhu (To sebagai input), yang mana
mudah dan murah digunakan di thermostat atau penggunaan peringatan suhu (membeku
atau mendidih). Ambang batas suhu mudah diprogram. Pada SM Bus, fitur ini 11dapat
berfungsi sebagai interupsi pada prosesor yang dapat memicu pembacaan semua slave
pada bus dan menentukan kondisi sebenarnya. Secara normal, sensor MLX90614 dapat
menginderai objek dengan emisivitas bernilai 1. Walaupun begitu, sensor ini bisa
dikalibrasi dengan mudah untuk menginderai objek dengan emisivitas bernilai 0,1
hingga 1.MLX90614 bisa menggunakan 2 alternatif sumber tegangan yaitu 5V atau
baterai 3V. Posisi pin dapat dilihat pada Gambar 2.4 dan deskripsinya pada Tabel 2.2
(https://repository.usd.ac.id/34082/2/135114047_full.pdf)
VSS Ground
Pada Gambar 2.5 dijelaskan bahwa konfigurasi dan deskripsi dari pin-pin LCD antara
lain:
1. Pin 1 dihubungkan ke Gnd
2. Pin 2 dihubungkan ke Vcc +5V
PIN DESKRIPSI
1 Ground
2 VCC
4 Pengatur Kontras
5 RS (Register Select)
6 R/W (Read/Write) LCD Register
7-14 EN (Enable)
16 Ground
2.5 Buzzer
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah
getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama
dengan speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diagram
dan kemusian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan
tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas
magnetnya, karena kumparan dipasang pada diagrafma maka setiap gerakan
kumparanakan menggerakkan diafragma secara bolak-balik sehingga membuat udara
bergetar yang akan menghasilkan suara.
Jika kamu perhatikan, ada perbedaan yang signifikan antara tegangan input &
tegangan output pada IC regulator tegangan. Perbedaan antara tegangan input dan
output dilepaskan sebagai panas, dengan kata lain semakin besar perbedaan antara
tegangan input dan output, semakin banyak panas yang dihasilkan. Jika regulator
tidak memiliki pendingin untuk menghilangkan panas ini, maka IC bisa rusak dan
tidak berfungsi. Oleh karena itu, disarankan untuk membatasi tegangan
Seperti yang telah dijelaskan sebelumnya tentang catu daya yang diatur (regulated
power supply) sebagai perangkat yang bekerja pada tegangan DC dan dapat mengontrol
output secara akurat pada tegangan tetap sepanjang waktu bahkan jika ada perubahan
(https://www.google.com/search?q=gambar+Rangkaian+Dasar+IC+7805&tbm)
(https://www.google.com/search?q=gambar+baterai&tbm)
3.1 Diagram Blok Pengukur Suhu Tubuh Secara Tak Sentuh Menggunakan Sensor
Suhu ir Non Contact MLX90614 Berbasis Arduino Nano
Diagram blok sistem merupakan salah satu bagian terpenting dalam perancangan dan
pembuatan alat ini, karena dari diagram blok dapat diketahui prinsip kerja keseluruhan
rangkaian.
Baterai
Arduini Nano
Rangkaian ini berfungsi sebagai pusat kendali dari seluruh sistem yang
ada.Komponen utama dari rangkaian ini adalah IC Mikrokontroler Arduino nano.Semua
program diisikan pada memori dari IC ini sehingga rangkaian dapat berjalan sesuai
dengan yang dikehendaki. Mikrokontroller Arduino nano dapat memisahkan memori
untuk kode program dan memori untuk data sehingga dapat memaksimalkan kerja.
Pada rangkaian diatas baterai 12 volt terhubung pada capasitor 100 nf, lalu
dihubungkan pada tegangan input ic regulator 7805 agar mendapat output 5 volt dc,
output 5 volt dc inilah yang akan berfungsi untuk memberi supply pada sistem Arduino
nano.
Dari gambar 3.3rangkaian ini terhubungke PD.0... PD7, yang merupakan pin I/O
dua arah dan pin fungsi khusus, yaitu sebagai Analog and Digital Converter. Nilai yang
akan tampil pada LCD display akan dapat dikendalikan oleh Mikrokontroller Arduino
nano.
Start
Inisialisasi
Program
LCD
Menampilkan
Nilai Suhu
Selesai
Perancangan alat ini meliputi Sensor Non Contact MLX90614, Arduino Nano,
LCD. Perancangan Alat dapat dilihat pada gambar 3.7.
Keterangan :
Bab ini akanmenjelaskan mengenai bentuk fisik alat bagian luar dan dalam,
tampilan penggunaan alat dan langkah-langkah menjalankan alat pengukur suhu dengan
sensor inframerah MLX90614 berbasis Arduino Nano, sintaks program yang digunakan,
serta menganalisis data hasil pengujian.
Bentuk fisik bagian luar dari alat pengukur suhu dengan sensor MLX90614 dapat dilihat
pada Gambar 4.1 di atas. Adapun keterangan gambar 4.1 sebagai berikut:
1. Sensor suhu inframerah MLX90614 sebagai alat untuk mengukur suhu Contacless.’
2. LCD 16X2 sebagai penampil.
3. Potensiometer Sebagai mengatur sound system
4. Switch Button sebagai on/off suatu alat
Gambar 4.2 tampilan LCD setelah sistem pengukuran Arduino Nano diaktifkan
(tombol powerdalam keadaan ON)
1. Tekan tombol power ke posisi ON, sehingga LCD dan alat sensor dalam keadaan
aktif.
2. Arahkan sensor Non Contact MLX90614 ketelapak tangan atau dahi seseorang
untuk mengetahui sensor sudah aktif atau belum. Jika sudah terlihat perubahan
nilai suhu pada ambien (lingkungan) dan objek, maka sensor MLX90614 sudah
aktif.
3. Siapkan objek yang hendak diukur suhunya. Contoh tubuh manusia
4. Letakkan alat berdekatan dengan objek yang akan diukur sehingga sensor suhu
MLX90614 dapat mengukur suhu objek secara stabil (tanpa goncangan / tidak
berubah posisi). Sebaiknya sensor suhu MLX90614 diletakan berdekatan dengan
jarak ideal kurang dari 5 cm dari objek.
5. Setelah penempatan objek dan alat dirasa sesuai, pengguna bisa memulai proses
pengukuran suhu. Jika ingin dilakukan perbandingan, pengguna dapat
menambahkan termometer suhu tubuh di dalam objek.
6. Jika proses pengukuran suhu dirasa cukup, pengguna bisa menekan tombol off
untuk menonaktifkan alat.
Tabel 4.1 Hasil pengukuran suhu air yang dipanaskan dengan kompor gas Keterangan
table 4.1:
40
suhu
30 suhu
temepratur
suhu C
sensor; 28
e; 28
20
10
0 error; 02
deviasi;
5 10 15 20 25
Keterangan tabel :
Keterangan tabel :
4.5 Program
#include <Wire.h>
#include <Adafruit_MLX90614.h>
#include <LiquidCrystal.h>
void setup() {
Serial.begin(9600);
lcd.begin(16, 2);
mlx.begin();
void loop() {
Serial.println();
lcd.setCursor(0, 0);
lcd.setCursor(0, 1);
lcd.print(mlx.readObjectTempC());
lcd.setCursor(6, 1);
lcd.print("Celsius");
delay(1000);
5.1 Kesimpulan
Setelah melakukan tahap perancangan dan pembuatan sistem yang kemudian dilanjutkan
dengan tahap pengujian dan analisa maka dapat diambil kesimpulan sebagai berikut :
5.2 Saran
Penulis menyadari bahwa alat ini masih sangat membutuhkan banyak pengembangan
baik dari segi penggunaan dan sistem kerja, maka penulis mempunyai beberapa saran
demi kemajuan dan pengembangan alat ini yakni :
1. Untuk kedepannya fungsi dari alat ini diharapkan bisa diperluas lagi supaya
tidak hanya mengukur suhu dengan jarak 50 cm saja, tetapi bisa mengukur suhu
dengan jarak lebih dari 50 m.
Suryatmo, F. 1986. Teknik Listrik Pengukuran. Jakarta : Bina aksara Flink, R.J dan O.G
Brink. 1984. Dasar-dasar Ilmu Instrumen. Jakarta : Bina cipta.
https://teknikelektronika.com/jenis-ic-voltage-regulator-pengatur-tegangan/
http://portal.fmipa.itb.ac.id/snips2015/files/snips_2015_jesi_pebralia_2eb9ac75d6883b2
52444187ad2cde6b9.pdf
http://eprints.umm.ac.id/39379/3/BAB%202.pdf
https://repository.usd.ac.id/34082/2/135114047_full.pdf
User Manual
License http://creativecommons.org/licenses/by-sa/2.5/
More information:
www.arduino.cc
Rev. 2.3
Capacitor,!0.1uF!50V!1
1! 5! C1,C3,C4,C7,C9! Ceramic!X7R!0805!
Capacitor,!4.7uF!10V!1
2! 3! C2,C8,C10! Tantalum!Case!A!
Capacitor,!18pF!50V!5%
3! 2! C5,C6! Ceramic!NOP/COG!080
4! 1! D1! Diode,!Schottky!0.5A!2
5! 1! J1,J2! Headers,!36PS!1!Row!
Connector,!Mini"B!Rece
6! 1! J4! Rt.!Angle!
7! 1! J5! Headers,!72PS!2!Rows!
LED,!Super!Bright!RED!
100mcd!640nm!120deg
!
8! 1! LD1! 0805!
LED,!Super!Bright!GREE
50mcd!570nm!110degr
9! 1! LD2! 0805!
LED,!Super!Bright!ORAN
!
160mcd!601nm!110deg
!
LED,!Super!Bright!BLUE
80mcd!470nm!110degr
Resistor!Pack,!1K!+/"5%!
12! 1! R1! 62.5mW!4RES!SMD! YC164"JR"071KL! Yageo! YC164J"1.0K
Features and Benefits
Resistor!Pack,!680!+/"5%!
❑ Small size, lowcost
13! 1! R2! 62.5mW!4RES!SMD!
❑ YC164"JR"07680RL!
Easy tointegrate Yageo! YC164J"680C
❑ Factory calibrated in wide temperaturerange:
-40…+125˚C for sensor temperature and
Switch,!Momentary!Tact!
-70…+380˚C for object temperature.
14! 1! SW1! SPST!150gf!3.0x2.5mm!
❑ B3U"1000P!
High accuracy Omron!
of 0.5°C over wide temperaturerange SW1020CT
(0…+50°C for both Ta andTo)
IC,!Microcontroller!RISC!
❑ High (medical) accuracycalibration
❑ Measurement resolution of0.02°C
16kB!Flash,!0.5kB!EEPROM
❑ Single and dual zoneversions
,! ❑ SMBus compatible digitalinterface
❑ Customizable PWM output for continuousreading
15! 1! U1! 23!I/O!Pins! ❑ ATmega168"20AU!
Available in 3V and 5Vversions Atmel! 556"ATMEGA1
❑ Simple adaptation for 8…16Vapplications
IC,!USB!to!SERIAL!UART!28
❑ Sleep mode for reduced powerconsumption
! ❑ Different package options for applications
andmeasurementsversatility
16! 1! U2! Pins!SSOP! ❑ FT232RL!
Automotivegrade FTDI! 895"FT23
IC,!Voltage!regulator!5V,!
Ordering Information
595"UA78M05
17! 1! U3! 500mA!SOT"223! UA78M05CDCYRG3! TI! !
Cystal,!16MHz!+/"20ppm!
18! 1! Y1! HC"49/US!Low!Profile! ABL"16.000MHZ"B2! Abracon! 815"ABL"1
43
1 Functionaldiagra 2 GeneralDescription
m
The MLX90614 is an Infra Red thermometer for
MLX90614Axx: Vdd=4.5 ....... V non contact temperature measurements. Both the
J1
1MLX90614
IR sensitive thermopile detector chip and the signal
SCL
PWM
SCL U1
4
conditioning ASSP are integrated in the same TO-
Vss
SDA 2SDA Vz 39 can.
Vdd
C1 Thanks to its low noise amplifier, 17-bit ADC
Vdd 3
and powerful DSP unit, a high accuracy and
GND
resolution of the thermometer is achieved.
CON1 0.1 uF The thermometer comes factory calibrated with a
digital
C1valueandtypemaydiffer in
different applications for
PWM and SMBus (System Management Bus) output.
optimumEMC As a standard, the 10-bit PWM is configured to
continuously transmit the measured temperature in
MLX90614 connection to SMBus
range of -20…120˚C, with an output resolution
Figure 1: Typical application of0.14˚C.
schematics The factory default POR setting is SMBus.
44
46
47
48
5 Maximumratings
Parameter MLX90614ESF-Axx MLX90614ESF-Bxx MLX90614KSF-Axx
MLX90614ESF-Dxx
Supply Voltage, VDD (over voltage) 7V 5V 7V
Supply Voltage, VDD (operating) 5.5 V 3.6V 5.5V
Reverse Voltage 0.4 V
Operating Temperature Range, TA -40…+85°C -40…+125°C
Storage Temperature Range, TS -40…+125°C -40…+125°C
ESD Sensitivity (AEC Q100 002) 2kV
DC current into SCL / Vz (Vz mode) 2 mA
DC sink current, SDA / PWM pin 25 mA
DC source current, SDA / PWM pin 25 mA
DC clamp current, SDA / PWM pin 25 mA
DC clamp current, SCL pin 25 mA
49
Bottom view
Figure 2: Pin description
Note: for +12V (+8…+16V) powered operation refer to the Application information section. For EMC and
isothermalconditionsreasonsitishighlyrecommendednottouseanyelectricalconnectiontothemetalcan except by the
VSSpin.
WiththeSCL/VzandPWM/SDApinsoperatedin2-wireinterfacemode,theinputSchmidttriggerfunctionis automatically
enabled.
50
7.1 MLX90614Axx
All parameters are valid for TA = 25 ˚C, VDD =5V (unless otherwise specified)
Supplies
External supply VDD 4.5 5 5.5 V
Supply current IDD No load 1.3 2 mA
Supply current No load, erase/write EEPROM
IDDpr 1.5 2.5 mA
(programming) operations
Zener voltage Vz Iz = 75…1000µA (Ta=room) 5.5 5.7 5.9 V
Iz = 70…1000µA,
Zener voltage Vz(Ta) 5.15 5.7 6.24 V
full temperature range
Power On Reset
POR level VPOR_up Power-up (full temp range) 1.4 1.75 1.95 V
POR level VPOR_down Power –down (full temp range) 1.3 1.7 1.9 V
POR hysteresis VPOR_hys Full temp range 0.08 0.1 1.15 V
VDD rise time (10% to 90%
TPOR Ensure POR signal 20 ms
of specified supply voltage)
Output valid
Tvalid After POR 0.25 s
(result in RAM)
Pulse width modulation1
PWM resolution PWMres Data band 10 bit
Factory default, internal
PWM output period PWMT,def 1.024 ms
oscillator factory calibrated
Internal oscillator factory
calibrated, over the entire
PWM period stability dPWMT -10 +10 %
operation range andsupply
voltage
Output high Level PWMHI Isource = 2 mA VDD-0.2 V
Output low Level PWMLO Isink = 2 mA VSS+0.2 V
Output drive current IdrivePWM Vout,H = VDD - 0.8V 7 mA
Output sink current IsinkPWM Vout,L = 0.8V 13.5 mA
51
1. With large capacitive load lower PWM frequency is recommended. Thermal relay output (when
configured)hasthePWMDCspecificationandcanbeprogrammedaspush-pull, or NMOSopendrain. PWMis free-running,
power-up factory default is SMBus, refer to section 8.6, “Switching between PWM and SMBus communication” for
moredetails.
2. For SMBus compatible interface on 12V application refer to Application information section. SMBus
compatible interface is described in details in the SMBus detailed description section. Maximum number of MLX90614
devices on one bus is 127, higher pull-up currents are recommended for higher number of devices, faster bus data
transfer rates, and increased reactive loading of thebus.
MLX90614 is always a slave device on the bus. MLX90614 can work in both low-power and high-power SMBus communication.
All voltages are referred to the Vss (ground) unless otherwise noted. Sleep
52
All parameters are valid for TA = 25 ˚C, VDD =3V (unless otherwise specified)
Supplies
External supply VDD 2.6 3 3.6 V
Supply current IDD No load 1.3 2 mA
Supply current No load, erase / write EEPROM
(programming) IDDpr operations 1.5 2.5 mA
53
54
8.1 Blockdiagram
81101
t°
STATEMACHINE
Voltage
90302 Regulator
56
8.3.1 Amplifier
A low noise, low offset amplifier with programmable gain is used for amplifying the IR sensor
voltage.
By carefully designing the input modulator and balanced input impedance, the max offset of
the system is 0.5µV.
Themodulecanoperatefrom3differentsup
plies: VDD = 5V
€MLX90614Axx
VDD = 3.3V € MLX90614Bxx (battery or regulated supply)
VDD=8…16V€MLX90614Axxfewexternalcomponentsarenecessarypleasereferto“
Applications information”sectionforinformationaboutadoptinghighervoltagesupplies.
ThePowerOnReset (POR)isconnectedtoVdd supply.Theon-chipPOR
circuitprovidesanactive(high)level of the POR signal when the Vdd voltage rises above
approximately 0.5V and holds the entire MLX90614 in reset until the Vdd is higher than the
specified POR threshold VPOR . During the time POR is active, the POR signal is available as an
open drain at the PWM/SDA pin. After the MLX90614 exits the POR condition, the function
programmed in EEPROM takes precedence for thatpin.
8.3.3 EEPROM
AlimitednumberofaddressesintheEEPROM memorycanbechangedby
thecustomer.Thewhole EEPROM can be read through the SMBusinterface.
EEPROM (32X16)
Name Address Write access
Tomax 0x00 Yes
Tomin 0x01 Yes
PWMCTRL 0x02 Yes
Ta range 0x03 Yes
Emissivity correction coefficient 0x04 Yes
Config Register1 0x05 Yes
Melexis reserved 0x06 No
… … …
Melexis reserved 0x0D No
SMBus address (LSByte only) 0x0E Yes
Melexis reserved 0x0F Yes
Melexis reserved 0x10 No
… … …
Melexis reserved 0x18 No
Melexis reserved 0x19 Yes
Melexis reserved 0x1A No
Melexis reserved 0x1B No
ID number 0x1C No
ID number 0x1D No
ID number 0x1E No
ID number 0x1F No
57
58
0 1 - Ta,Tobj2
1 0 -Tobj2
1 1 - Tobj1, Tobj2
0 - Single IRsensor
1 - Dual IRsensor
0 0 0 - GAIN = 1 - Amplifier is bypassed
0 - Positive sign ofKs
0 0 1 - GAIN =3
1 - Negative sign ofKs
0 1 0 - GAIN =6
0 0 0 - FIR = 8 notrecommended
0 1 1 - GAIN = 12,5
1 0 0 - GAIN = 25
0 0 1 - FIR = 16 notrecommended
1 0 1 - GAIN = 50
1 1 0 - GAIN = 100
0 1 0 - FIR = 32 notrecommended
1 1 1 - GAIN = 100
0 - Positivesign of
0 Kt2
1 1 - FIR = 64 not recommended 1 0 0 -
1 - Negativesign FIR
of Kt2
=128
0 -Enablesensortest
1 -Disablesensort est
1 0 1 - FIR =256
Note: The following bits / registers should not be altered (except with special tools – contact Melexis for such tools
1 1 0 - FIR =512
availability) in order to keep the factory calibration relevant:
1 1 1 - FIR = 1024
59
60
TheMLX90614featuresconfigurableon-
chipdigitalfilters.Theyallowcustomizationforspeedornoise.
Factorydefaultconfigurationsandthetypicalsettlingtimeandnoiseforthe
MLX90614familyaregivenbelow.
Device Settling time, sec Typical noise, °C rms Spike limit
MLX90614AAA, BAA, DAA 0.10 0.05 100%
MLX90614ABA, BBA 0.14 0.07 100%
MLX90614ACC, BCC 0.14 0.18 100%
MLX90614ACF, BCF 1.33 0.10 50%
MLX90614DCH, DCI, BCH, BCI 0.65 0.10 80%
Table 8: factory default IIR and FIR configuration, settling time and typical noise
Details on the filters are given in the application note “Understanding MLX90614 on-
chip digital signal filters” available from www.melexis.com.
Theevaluationboard,
EVB90614supportedbyPCSWallowseasyconfigurationofthefilters,whilenot requiring in-depth
understanding of theEEPROM.
The available filter settings and the settling times are listed below. Settling time depends
on three configurations: single / dual zone, IIR filter settings and FIR filter settings. The FIR
filter has a straight forward effect on noise (4 times decreasing of filter strength increases the
noise 2 times and vice versa. The IIR filter
providesanadditional,spikelimitingfeature.Spikelimitdefinesthelevel
ofmagnitudetowhichthespikewould be limited – for example, 25% denotes that if a 20°C
temperature delta spike is measured the temperature reading by the MLX90614 will spike
only5°C.
Settling time (s) Settling time (s)
IIR setting FIR setting Spike limit
90614xAx 90614xBx, 90614xCx
xxx 000…011 Not recommended
100 100 0.04 0.06 100.00%
100 101 0.05 0.07 100.00%
100 110 0.06 0.10 100.00%
100 111 0.10 0.14 100.00%
101 100 0.12 0.20 80.00%
101 101 0.16 0.24 80.00%
101 110 0.22 0.34 80.00%
101 111 0.35 0.54 80.00%
110 100 0.24 0.38 66.70%
110 101 0.30 0.48 66.70%
110 110 0.43 0.67 66.70%
110 111 0.70 1.10 66.70%
111 100 0.26 0.42 57.00%
111 101 0.34 0.53 57.00%
111 110 0.48 0.75 57.00%
111 111 0.78 1.20 57.00%
000 100 0.30 0.47 50.00%
000 101 0.37 0.60 50.00%
000 110 0.54 0.84 50.00%
000 111 0.86 1.33 50.00%
001 100 0.70 1.10 25.00%
001 101 0.88 1.40 25.00%
001 110 1.30 2.00 25.00%
001 111 2.00 3.20 25.00%
010 100 1.10 1.80 16.70%
61
62
It is not possible to write into the RAM memory. It can only be read and only a limited number
of RAM registers are of interest to the customer.
RAM (32x17)
Name Address Read access
Melexis reserved 0x00 Yes
… … …
Melexis reserved 0x03 Yes
Raw data IR channel 1 0x04
Raw data IR channel 2 0x05
TA 0x06 Yes
TOBJ1 0x07 Yes
TOBJ2 0x08 Yes
Melexis reserved 0x09 Yes
… … …
Melexis reserved 0x1F Yes
The chip supports a 2 wires serial protocol, build with pins PWM / SDA and SCL.
• SCL – digital input only, used as the clock for SMBus compatible communication. This pin has the
auxiliaryfunctionforbuildinganexternalvoltageregulator.Whentheexternalvoltageregulatorisused, the2-
wireprotocolisavailableonlyifthepowersupplyregulatoris overdriven.
• PWM / SDA – Digital input / output, used for both the PWM output of the measured object temperature(s) or
the digital input / output for the SMBus. In PWM mode the pin can be programmed in EEPROM to operate as
Push / Pull or open drain NMOS (open drain NMOS is factory default). In SMBus mode SDA is forced to open
drain NMOS I/O, push-pull selection bit defines PWM / Thermal relayoperation.
SMBuscommunicationwithMLX90614iscoveredindetailsinapplicationnotes,availa
blefrom www.melexis.com.
8.4.1 Functionaldescription
The SMBus interface is a 2-wire protocol, allowing communication between the Master
Device (MD) and one or more Slave Devices (SD). In the system only one master can be
presented at any given time [1]. The MLX90614 can only be used as a slave device.
Generally, the MD initiates the start of data transfer by selecting a SD through the Slave Address (SA).
TheMDhasreadaccesstotheRAMandEEPROMandwrite
accessto9EEPROMcells(ataddresses 0x00, 0x01, 0x02, 0x03, 0x04, 0x05*, 0x0E, 0x0F, 0x09). If
the access to the MLX90614 is a read operation it will respond with 16 data bits and 8 bit PEC
only if its own slave address, programmed in internal EEPROM, is equal to the SA, sent by the
master. The SA feature allows connecting up to 127 devices (SA=0x00…0x07F) with only 2
wires, unless the system has some of the specific features described in paragraph 5.2 of reference
[1]. In order to provide access to any device or to assign an address to a SD before it is
connected to the bus
system,thecommunicationmuststartwithzeroSAfollowedbylowR/W̄bit.Whenthiscommandissentfro
63
64
ThereareelevencommandprotocolsforstandardSMBusinterface.TheMLX90614supportsonlyt
woof them. Not supported commandsare:
• Quick Command
• Byte commands - Sent Byte, Receive Byte, Write Byte and ReadByte
• ProcessCall
• Blockcommands–BlockWriteandWrite-BlockReadProcessCall Supported
commandsare:
• ReadWord
• WriteWord
8.4.3 Detaileddescription
The PWM / SDA pin of MLX90614 can operate also as PWM output, depending on the
EEPROM settings. If PWM is enabled, after POR the PWM / SDA pin is directly configured as
PWM output. Even if the device is in PWM mode SMBus communication may be restored by a
special command. That is why hereafter both modes are treated separately.
8.4.3.1 BusProtocol
1 7 1 1 8 1 1
S Slave Address Wr A Data Byte A P
S StartCondition
A Acknowledge(thisbitcanbe0forACKand1for NACK) S
StopCondition
66
1 7 1 1 8 1 1 7 1 1
S Slave Address Wr A Command A Sr Slave Address Rd A ………..
8 1 8 1 8 1 1
……….. Data Byte Low A Data Byte High A PEC A P
1 7 1 1 8 1
S Slave Address Wr A Command A ………..
8 1 8 1 8 1 1
……….. Data Byte Low A Data Byte High A PEC A P
8.4.4 Bittransfer
Changing data
SDA
SCL
67
68
8.4.5 Commands
RAM and EEPROM can be read both with 32x16 sizes. If the RAM is read, the data are
divided by two, due to a sign bit in RAM (for example, T O1 - RAM address 0x07 will sweep
between 0x27AD to 0x7FFF as the object temperature rises from -70.01°C to +382.19°C). The
MSB read from RAM is an error flag (active high) for the linearized temperatures (TO1, TO2and
Ta). The MSB for the raw data (e.g. IR sensor1 data) is a sign bit (sign and magnitude format). A
write of 0x0000 must be done prior to writing in EEPROM in order to erase the EEPROM cell
content. Refer to EEPROM detailed description for factory calibration EEPROM locations that
need to be keptunaltered.
Opcode Command
000x xxxx* RAM Access
001x xxxx* EEPROM Access
1111_0000** Read Flags
1111_1111 Enter SLEEP mode
Data[7] - EEBUSY - the previous write/erase EEPROM access is still in progress. High active. Data[6] -
Unused
Data[5] - EE_DEAD - EEPROM double error has occurred. High active. Data[4] - INIT -
POR initialization routine is still ongoing. Low active.
Flag read is a diagnostic feature. The MLX90614 can be used regardless of these flags.
For details and examples for SMBus communication with the MLX90614 check the www.melexis.com
SDA
S1 011 010 WA0 0000 111A S1 01101 0 RA1 101001 0A0 011101 0A0 0110000AP
69
SA_W = 0xB4 Command = 0x22 LSByte = 0x07 MSByte= 0xC8 PEC =0x48
SDA
SCL
70
The MLX90614 meets all the timing specifications of the SMBus [1]. The maximum
frequency of the MLX90614 SMBus is 100 KHz and the minimum is 10 KHz.
SMBus Request (tREQ) is the time that the SCL should be forced low in order to switch
MLX90614 from PWM mode to SMBus mode – at least 1.44ms;
Timeout L is the maximum allowed time for SCL to be low during communication.
After this time the
MLX90614willresetitscommunicationblockandwillbereadyfornewcommunication–
notmorethan27ms;
TimeoutHisthemaximumallowedtimeforSCLtobehighduringcommunication.Afterthisti
me MLX90614 will reset its communication block assuming that the bus is idle (according to
the SMBus specification) – not more than45µs.
Tsuac(SD)is the time after the eighth falling edge of SCL that MLX90614 will force
PWM / SDA low to acknowledge the last received byte – not more than 2,5µs.
Thdac(SD) is the time after the ninth falling edge of SCL that MLX90614 will release
the PWM / SDA (so the MD can continue with the communication) – not more than 1,5µs.
Tsuac(MD) is the time after the eighth falling edge of SCL that MLX90614 will release
PWM / SDA (so that the MD can acknowledge the last received byte) – not more than 1,5µs.
Thdac(MD) is the time after the ninth falling edge of SCL that MLX90614 will take
control of the PWM / SDA (so it can continue with the next byte to transmit) – not more than
1,5µs.
The indexes MD and SD for the latest timings are used – MD when the master
device is making acknowledge; SD when the slave device is making acknowledge. For
other timings see [1].
Tsuac Thdac
SDA
1 0 1 0 1 1 ACK 7
1 0
3 4 5 6 8 9
SCL 1 2
71
The MLX90614 can enter in Sleep Mode via the command “Enter SLEEP mode” sent via
the SMBus interface. This mode is not available for the 5V supply version. There are two ways
to put MLX90614 into power-up default mode:
- POR
- ByWakeuprequest€SCLpinhighandthenPWM/SDApinlowforatleasttDDQ>33ms
If EEPROM is configured for PWM (EN_PWM is high), the PWM interface will be selected after
awakening and if PWM control [2], PPODB is 1 the MLX90614 will output a PWM pulse train with
push- pulloutput.
NOTE: In order to limit the current consumption to the typical 2.5µA Melexis recommends that the
SCL pin is kept low during sleep as there is leakage current trough the internal synthesized zener
diode connected toSCL pin. This may be achieved by configuring the MD driver of SCL pin as
Push-Pull and not having Pull-Up resistor connected on SCLline.
SDA
S 1 0 1 1 0 1 0 W A 1 1 1 1 1 1 1 1 A 1 1 1 0 1 0 0 0 AP
Figure 11:SCL
Enter sleep mode command (SA = 0x5A, Command = 0xFF, PEC = 0xE8)
Sleepmode Normalmode
SDA
Afterwakeupthefirstdataisavailableafter0.25seconds(typ).On-
chipIIRfilterisskippedforthevery
72
73
The auxiliary functions of the SCL pin (zener diode) add undershoot to the clock pulse
(5V devices only) as shown in the picture below (see Figure 13). This undershoot is caused by
the transient response of the on-
chipsynthesizedZenerdiode.Typicaldurationofundershootisapproximately15µs.Anincreasedreact
ance
oftheSCLlineislikelytoincreasethiseffect.UndershootdoesnotaffecttherecognitionoftheSCLrising
edge by the MLX90914, but may affect proper operation of non-MLX90614 slaves on the
samebus.
Figure 13: Undershoot of SCL line due to on chip synthesized Zener diode (5V versions only)
Continuous SMBus readings can introduce and error. As the SCL line inside TO39
package is passing relatively close to the sensor input and error signal is induced to the sensor
output. The manifestation of the problem is wrong temperature readings. This is especially valid
for narrow FOV devices. Possible solution is to keep SDA and SCL line quiet for period longer
than refresh rate and settling time defined by internal settings of MLX90614 prior reading the
temperature or switch to PWM signal and completely disconnect from SDA and SCL line.
74