Peltier thermoelectric heat pump is a popular thermoelectric energy conversion module that applies the Peltier effect, transferring heat energy from one side of the device to the other side. Peltier effect occurs when two different semiconductor materials (n-type and p-type) are joined together with electric current passing through its junction. Therefore, the junction could either be cooled or heated [28]. The Peltier TEC device can behave like a temperature controllers by both cooling and heating. The advantages of using this device are longer lifetime, environmental friendly, satisfactory performance, high efficiency, no maintenance or complex water distribution pipes requirements, noiseless and lighter …show more content…
PWM is employed in this study to control the power of the Peltier device by adjusting the duty cycle. Duty cycle is measured in percentage (between 0 – 100%). The percentage of the duty cycle specifically indicates the percentage of time a digital signal is on over an interval or period of time, where the period is the inverse of the frequency of the waveform. Similarly, the PWM changes the pulse width, resulting to changes in the duty cycle and therefore averaging the output power signal [31]. Six of Arduino 14 I/O pins can be implemented for PWM purpose (8 bits decimal integer with 0-255 range) using analogWrite whereas all the pins can be performed with digitalWrite method [24]. For this research, pin 10 will be used with the aid of analogWrite method to provide PWM frequency of ~3895Hz (more suitable for Peltier application). Due to this, the analogWrite method was chosen because of the simpler calculation needed to get the preferable duty cycle. Moreover, even if digitalWrite allow frequency to be changed, the math involved in getting desired duty cycle is more complicated [32]. The analogWrite method is divided into three parts, including: (1) variables initialization, (2) void setup: pinMode function specifies pins or variables as input or output, and (3) void loop: codes location that run in an infinite loop. By using the analogWrite