“Resistance meter”的版本间的差异
(Created page with " // Open whatever port is the one you're using. myPort = new Serial(this, Serial.list()[0], 9600); myPort.bufferUntil('\n'); // Trigger a SerialEvent on new line //On the s...") |
(→Debugging) |
||
(未显示同一用户的4个中间版本) | |||
第1行: | 第1行: | ||
+ | {| style="width: 800px;" | ||
+ | |- | ||
+ | | | ||
+ | ==Objective== | ||
+ | |||
+ | The course will show you how to use Processing software to display the value of the resistance meter in the form of the graph, and the resistance meter can be achieved by Microduino. | ||
+ | |||
+ | ==Equipment== | ||
+ | *'''[[Microduino-Core]]''' | ||
+ | *'''[[Microduino-FT232R]]''' | ||
+ | |||
+ | *Other Hardware Equipment | ||
+ | **A USB cable | ||
+ | **A 20k Ω resistor | ||
+ | **A 104 ceramic capacitor | ||
+ | **A bread board | ||
+ | **A box of jumpers | ||
+ | |||
+ | |||
+ | |||
+ | ==Schematic Diagram== | ||
+ | |||
+ | |||
+ | [[File:ResistanceMeterSchematics.jpg|600px|center|thumb]] | ||
+ | |||
+ | |||
+ | ==Program== | ||
+ | |||
+ | Referring to ResistanceMeter | ||
+ | |||
+ | processingResistanceMeter | ||
+ | |||
+ | ==Debugging== | ||
+ | |||
+ | Step 1:Building hardware environment according to the schematic diagram, just as follows: | ||
+ | [[File:IResistanceMeterConnectionDiagram.jpg|600px|center|thumb]] | ||
+ | |||
+ | |||
+ | Step 2:Here is the code we need: | ||
+ | |||
+ | The code of two ends (Processing and Microduino) | ||
+ | |||
+ | Microduino: | ||
+ | |||
+ | //Using filter algorithm to calculate resistance and displaying the data on Processing via serial output. | ||
+ | |||
+ | //filter Algorithm | ||
+ | float filter() | ||
+ | { | ||
+ | float sum = 0; | ||
+ | for(int count = 0; count < N; count++) | ||
+ | { | ||
+ | sum += r; | ||
+ | delay(5); | ||
+ | } | ||
+ | return (float)(sum / N); | ||
+ | } | ||
+ | |||
+ | Processing: | ||
+ | |||
+ | //After getting the data of the first serial port, you can define or cache the data if there is a new line. | ||
+ | |||
+ | // is always my Microduino, so I open Serial.list()[0]. | ||
// Open whatever port is the one you're using. | // Open whatever port is the one you're using. | ||
myPort = new Serial(this, Serial.list()[0], 9600); | myPort = new Serial(this, Serial.list()[0], 9600); | ||
第34行: | 第97行: | ||
text ( resistance+unit, 0, 10); | text ( resistance+unit, 0, 10); | ||
− | Step | + | Step 3:Download the code and get it compiled successfully. |
− | Step 4: Putting the resistor ready to measure between the yellow and the black lines on the graph, watching resistance on Processing. | + | Step 4: Putting the resistor ready to measure between the yellow and the black lines on the graph, watching resistance on Processing. |
==Result== | ==Result== |
2014年6月6日 (五) 08:56的最新版本
ObjectiveThe course will show you how to use Processing software to display the value of the resistance meter in the form of the graph, and the resistance meter can be achieved by Microduino. Equipment
Schematic Diagram
ProgramReferring to ResistanceMeter processingResistanceMeter DebuggingStep 1:Building hardware environment according to the schematic diagram, just as follows:
The code of two ends (Processing and Microduino) Microduino: //Using filter algorithm to calculate resistance and displaying the data on Processing via serial output. //filter Algorithm float filter() { float sum = 0; for(int count = 0; count < N; count++) { sum += r; delay(5); } return (float)(sum / N); } Processing: //After getting the data of the first serial port, you can define or cache the data if there is a new line. // is always my Microduino, so I open Serial.list()[0]. // Open whatever port is the one you're using. myPort = new Serial(this, Serial.list()[0], 9600); myPort.bufferUntil('\n'); // Trigger a SerialEvent on new line //On the screeen, displaying the data received from Microduino in the form of graph and marking scale. String val = myPort.readStringUntil('\n'); if (val != null) { if ("Infinity!!".equals(val)) { unit="resistancetoo big"; } else { if ("K ohm".equals(val)) { unit="K ohm"; } else if (" ohm".equals(val)) { unit=" ohm"; } else { val = trim(val); println(val); resistance=Float.parseFloat(val); } } } vals[vals.length-1] = 200-resistance; //Display scale text ( "200-", 370, 10); text ( "--", 370, 50); text ( "100-", 370, 100); text ( "--", 370, 150); text ( "0-", 370, 200); //show current num text ( resistance+unit, 0, 10); Step 3:Download the code and get it compiled successfully. Step 4: Putting the resistor ready to measure between the yellow and the black lines on the graph, watching resistance on Processing. ResultThe graph will display the current resistance.
Video |