User Tools

Site Tools


ip_const_circ

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ip_const_circ [2016/03/06 22:31] – created joaomatosip_const_circ [2016/03/13 00:28] (current) joaomatos
Line 1: Line 1:
 {{::c_1.jpg?direct|}} {{::c_1.jpg?direct|}}
 {{::c_2.jpg?direct|}} {{::c_2.jpg?direct|}}
 +
 +
 +----
 +
 +For those who are not familiarized with the electronics:
 +
 +**HOW BREADBOARD WORKS **
 +
 + If you are not familiarized with breadboards try watching the following video:
 + https://www.youtube.com/watch?v=gwcVr5VfXwA
 +
 +**KEY COMPONENTS **
 +
 + We have two key components on this circuit , the DAC ( Digital to analog converter ) and the OP AMP ( Operational Amplifier ). In simple words , the DAC send a current output to the OP AMP (value depends on the digital input calculated on the Arduino code), which is configured as a transconductance amplifier( a current-to-voltage converter ) , and the desired voltage is send to the Proportional Valve that control the cart movement.
 + 
 + In order to send the digital value calculated by the arduino code we need to convert the decimal number from the code to binary . The DAC0808 has 8 bits , so the minimum decimal value that can be send to it is 0 (0 in binary) and the maximum is 255 (11111111 in binary). This data will be send through 8 ports connected between the Arduino and the DAC. A quick look at the DAC0808 datasheet and we can found the way that the ports needs to be connected. The MSB (most significant bit) port is the first of the eight number of the binary number , and the LSB(least significant bit) is the eighty of the eight numbers. 
 +The way the arduino send this value is very simple , we can send a HIGH or a LOW signal to each DAC pin. HIGH represent 1 and LOW represent 0. For example , if we want to send the digital value of 100 ( in binary is 1100100 ) the signal send through the Arduino will be ( HIGH(MSB)-HIGH-LOW-LOW-HIGH-LOW-LOW(LSB) ). How to program this procedure on the Arduino Language ( we are using C ) , is described on the Code section.
 +
 + If you are following the original tutorial you might have problem with the voltage output to the proportional valve. The problem can be one of the following:
 +
 +   * 1-> The DAC0808 is not the best DAC to be used with Arduino UNO. The problem is that you can not change all 8 outputs from the Arduino simultaneously because the way the ports are mapped.So you always get a little drive on your current output from the DAC , consequently your voltage output after the OP AMP will be a little different from the desires output.
 +   * 2-> Change the A0 and A1 ports to another two ports of the Arduino. As they are used for serial data uploading code,anything connected to this two ports could interfere with the loading process and drive the output value
ip_const_circ.txt · Last modified: 2016/03/13 00:28 by joaomatos