Wiki

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
resources:eval:user-guides:arduino-uno:reference_designs:demo_cn0391 [10 Jan 2018 18:13] Brandon Busheyresources:eval:user-guides:arduino-uno:reference_designs:demo_cn0391 [06 Jan 2021 10:01] (current) – Fixed bad link for en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-CN0391-ARDZ.html Ioana Chelaru
Line 3: Line 3:
 ===== General Description/Overview ===== ===== General Description/Overview =====
  
-The **ADuCM360_demo_cn0391** project uses the [[http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/EVAL-CN0391-ARDZ.html|EVAL-CN0391-ARDZ shield]] which is a multichannel thermocouple temperature measurement system with cold junction compensation.+The **CN0391_example** project uses the [[resources:eval:user-guides:eval-adicup360:hardware:cn0391|EVAL-CN0391-ARDZ Shield]] which is a multichannel thermocouple temperature measurement system with cold junction compensation.
  
-The EVAL-CN0391-ARDZ shield uses the [[http://www.analog.com/en/products/analog-to-digital-converters/precision-adc-10msps/ad7124-8| AD7124-8 part]] which is a **8-Channel** Low Noise, Low Power, **24-Bit**, Sigma-Delta **ADC** with PGA and Reference. All signal conditioning and excitation is performed by the AD7124-8, no additional components are needed.+The EVAL-CN0391-ARDZ shield uses the [[adi>en/products/analog-to-digital-converters/precision-adc-10msps/ad7124-8| AD7124-8 part]] which is a **8-Channel** Low Noise, Low Power, **24-Bit**, Sigma-Delta **ADC** with PGA and Reference. All signal conditioning and excitation is performed by the AD7124-8, no additional components are needed.
  
-{{:resources:eval:user-guides:eval-adicup360:reference_designs:cn0391:cn0391_demo_1.png?650 |}}+{{ :resources:eval:user-guides:arduino-uno:reference_designs:img_20180123_170932.jpg?600 |}}
  
 The **EVAL-CN0391-ARDZ** board has 4 thermocouple ports: **P1**~**P4**. The board has **4 Pt1000** RTDs: **R1**~**R4** close to each thermocouple socket for cold junction compensation. It supports all 8 types of thermocouple: **T, J, K, E, S, R, N, B** with full range temperature measurement. The RTD operates in the 2-wire mode and the excitation current is generated by the AD7124-8. The **EVAL-CN0391-ARDZ** board has 4 thermocouple ports: **P1**~**P4**. The board has **4 Pt1000** RTDs: **R1**~**R4** close to each thermocouple socket for cold junction compensation. It supports all 8 types of thermocouple: **T, J, K, E, S, R, N, B** with full range temperature measurement. The RTD operates in the 2-wire mode and the excitation current is generated by the AD7124-8.
  
-FIXME +The **CN0391_example** application reads the 4 RTD channels and the 4 thermocouple channels, processes them, makes all necessary calculations in order to output a linearized temperature for each available port. The **UART** interface (9600 baud rate, 1 start bit, 8-bits data length, no parity bits and stop bits) is used to send data to a terminal window.
-The **ADuCM360_demo_cn0391** application reads the 4 RTD channels and the 4 thermocouple channels, processes them, makes all necessary calculations in order to output a linearized temperature for each available port. The **UART** interface (19200 baud rate, 1 start bit, 8-bits data length, no parity bits and stop bits) is used to send data to a terminal window.+
 The user has the possibility to enable/disable calibration on each channel separately. In the terminal window after initialization will appear information messages regarding this: if calibration is enable then the user will be informed when the calibration is completed, otherwise the user will be informed that the calibration is disabled (see //USE_RTD_CALIBRATION// and //USE_TH_CALIBRATION// parameters).  The user has the possibility to enable/disable calibration on each channel separately. In the terminal window after initialization will appear information messages regarding this: if calibration is enable then the user will be informed when the calibration is completed, otherwise the user will be informed that the calibration is disabled (see //USE_RTD_CALIBRATION// and //USE_TH_CALIBRATION// parameters). 
  
Line 45: Line 44:
 \\ \\
 <note> <note>
-The second approximation formula was implemented for [[http://www.analog.com/en/design-center/reference-designs/hardware-reference-design/circuits-from-the-lab/cn0382.html|CN0382 circuit]], using data gathered in a smaller temperature range: 0°C to 105°C.+The second approximation formula was implemented for [[adi>en/design-center/reference-designs/hardware-reference-design/circuits-from-the-lab/cn0382.html|CN0382 circuit]], using data gathered in a smaller temperature range: 0°C to 105°C.
 </note> </note>
  
Line 76: Line 75:
     * PC or Laptop with a USB port     * PC or Laptop with a USB port
   * Software   * Software
-    * Arduino_Uno_CN0391 sketch+    * CN0391_example sketch
     * Arduino Interactive Development Environment(IDE)     * Arduino Interactive Development Environment(IDE)
  
Line 89: Line 88:
 ===== Obtaining the Source Code ===== ===== Obtaining the Source Code =====
  
-The source code and include files of the FIXME!**file_name_of_demo** can be found here:+The source code and include files of the **CN0391_example** can be found here:
  
 <WRAP round 80% download> <WRAP round 80% download>
  
-[[https://github.com/analogdevicesinc/arduino/tree/master/Arduino%20Uno%20R3| Arduino_Uno_demo_cn0391 at Github]]+[[https://github.com/analogdevicesinc/arduino/tree/master/Arduino%20Uno%20R3/examples/CN0391_exampleCN0391_example at Github]]
    
 </WRAP> </WRAP>
  
-===== Project Structure =====+===== Project Structure=====
  
-FIXME   Add text, picture, images, that describe the project structure.  Any software flow diagrams or decision trees can be added her to help customers understand how the applications are structures.+{{ :resources:eval:user-guides:arduino-uno:reference_designs:arduino2.png?700 |}}
  
 +The Arduino Sketch is used to open the example into Arduino IDE. The project is composed of three main parts:
 +
 +  * the main program (arduino sketch)
 +  * application layer
 +  * communication layer
 +  * driver layer (IC drivers and sensor data)
 ===== Configuring the Software Parameters ===== ===== Configuring the Software Parameters =====
  
 Before running your program, make sure that you have configured the software appropriately to your settings: Before running your program, make sure that you have configured the software appropriately to your settings:
  
-   * **RTD channel calibration** - //USE_RTD_CALIBRATION// parameter - enable/disable calibration on RTD channel - //YES// -> enable calibration; //NO// -> disable calibration(//CN0391.h//). +   * **RTD channel calibration** - enable/disable calibration on RTD channel (//CN0391.h//).  
-   * **Thermocouple channel calibration** - //USE_TH_CALIBRATION// parameter - enable/disable calibration on thermocouple channel - //YES// -> enable calibration; //NO// -> disable calibration(//CN0391.h//). +<code> 
-   * **Terminal refresh** - //DISPLAY_REFRESH// parameter - how often to refresh the output data - input time value in [msec] (//CN0391.h//). +    #define USE_RTD_CALIBRATION  YES  // Set YES to enable calibration on RTD channel, otherwise set to NO 
-   * **Thermocouple types** - //P1_TYPE// - //P4_TYPE// parameters - selects on of available thermocouple types for each port //TYPE_T// //TYPE_B// -> thermocouple types(//Thermocouple.h//).   +</code> 
 +   * **Thermocouple channel calibration** - enable/disable calibration on thermocouple channel (//CN0391.h//).  
 +<code> 
 +    #define USE_TH_CALIBRATION   YES   // Set YES to enable calibration on TC channel, otherwise set to NO 
 +</code> 
 +   * **Terminal refresh** - how often to refresh the output data - input time value in [msec] (//CN0391.h//). 
 +<code> 
 +    #define DISPLAY_REFRESH     (1000)   //ms 
 +</code> 
 +   * **Thermocouple types** - selects available thermocouple types for each port (//Thermocouple.h//).  
 +<code> 
 +    #define   P1_TYPE    TYPE_T      // TYPE_T,TYPE_J,TYPE_K,TYPE_E,TYPE_S,TYPE_R,TYPE_N,TYPE_B 
 +    #define   P2_TYPE    TYPE_T      // TYPE_T,TYPE_J,TYPE_K,TYPE_E,TYPE_S,TYPE_R,TYPE_N,TYPE_B 
 +    #define   P3_TYPE    TYPE_T      // TYPE_T,TYPE_J,TYPE_K,TYPE_E,TYPE_S,TYPE_R,TYPE_N,TYPE_B 
 +    #define   P4_TYPE    TYPE_T      // TYPE_T,TYPE_J,TYPE_K,TYPE_E,TYPE_S,TYPE_R,TYPE_N,TYPE_B 
 +</code> 
 + 
 ===== Compiling, Verifying, and Programming ===== ===== Compiling, Verifying, and Programming =====
  
Line 129: Line 149:
 You may need to configure the serial terminal depending on the current settings of the Arduino IDE.  Make sure the settings are as follows: You may need to configure the serial terminal depending on the current settings of the Arduino IDE.  Make sure the settings are as follows:
     Select COM Port of USB device     Select COM Port of USB device
-    Baud rate: 19200+    Baud rate: 9600
     Data: 8 bit     Data: 8 bit
     Parity: none     Parity: none
-    Stop: bit+    Stop: bit
     Flow Control: none     Flow Control: none
 \\ \\
resources/eval/user-guides/arduino-uno/reference_designs/demo_cn0391.1515604383.txt.gz · Last modified: 10 Jan 2018 18:13 by Brandon Bushey