|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||||
|
|||||
|
Current Sensor
Does anyone have anything on programming the code for the current sensor. All I really need to know is what type of input the sensor is, what type of value it returns, and the range of the value (and perhaps that value's meaning)
|
|
#2
|
||||
|
||||
|
Re: Current Sensor
Quote:
Wire the sensor up to a PWM cable and plug it into one of the analog inputs on the FRC. The current sensor gives an analog output voltage between 0 and 5 volts. The output voltage corresponds linearly to the current measured, with 0 volts = -75 amps, 2.5 volts = 0 amps, and 5 volts = 75 amps. Look at the graphs in the documentation I've attached for more info on the voltage vs. current characteristics. Use your program to read the analog voltage, then calculate the corresponding current using these characteristics (we just use a linear y = mx+b calculation). If you need help getting your software to read the analog value, look at the 2004 Programming Reference Guide available here. Hope this helps! Good luck, and let me know if you need any more help. |
|
#3
|
||||
|
||||
|
Re: Current Sensor
Quote:
ACS NOTE RANGE: 1Vout = -75A 2.5Vout = 0A 4Vout = 75A (0V ~-100A, 5V ~+100A, not guaranteed linear) see my replies posted elsewhere |
|
#4
|
|||
|
|||
|
Re: Current Sensor
I checked the programming guide, and I couldn't find anything on the current sensor. It would be great if someone could explain the programming to me or just give me some code for the current sensors. Thanks!
|
|
#5
|
|||||
|
|||||
|
Re: Current Sensor
Quote:
Code:
/* The formula comes from the equation of the line from the data by Willy C */
/* For this to work, the current sensors must be connected to Analog Inputs 1 and 2 */
#define Amps1 (rc_ana_in01 * 30) - 75
#define Amps2 (rc_ana_in02 * 30) - 75
printf("1st Sensor: %d\n", Amps1);
printf("2nd Sensor: %d\n", Amps2);
|
|
#6
|
||||
|
||||
|
Re: Current Sensor
Quote:
Be careful here guys. I made a mistake in my earlier post when I quoted the Volts vs. Amps characteristics of the current sensors, which Dale was nice enough to correct. Here are the correct values: Quote:
I = 50 * V - 125 where I is the current and V is the voltage you measure on the analog input. Also, in the code above, I think you want to use a Get_Analog_Value(rc_ana_01) in order to convert to an analog voltage. You also want to cast to an integer before printf'ing. user_routines.h: Code:
/* Current sensor data */ #define CURR_SLOPE 0.02 // Slope used in the current calculation #define CURR_INTERCEPT 2.5 // Y intercept used for the current calculation #define LEFT_CURR_SENS rc_ana_in01 // analog input 1; used to measure current on left motor #define RIGHT_CURR_SENS rc_ana_in02 // analog input 2; used to measure current on right motor Code:
/* Calculate and display the current going to the two drive motors using analog readings */
printf("Left motor current = %d\n", (int) (Get_Analog_Value(LEFT_CURR_SENS) - CURR_INTERCEPT) / CURR_SLOPE);
printf("Right motor current = %d\n", (int) (Get_Analog_Value(RIGHT_CURR_SENS) - CURR_INTERCEPT) / CURR_SLOPE);
|
|
#7
|
|||||
|
|||||
|
Re: Current Sensor
This should work, thank you!
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Current Sensor Output | Controls1317 | Electrical | 5 | 01-02-2004 23:45 |
| Current Monitoring system questions | PyroPhin | Technical Discussion | 44 | 17-02-2003 15:34 |
| Quick Optical Sensor Question | zorro | Technical Discussion | 10 | 21-01-2003 06:39 |
| What else do we want? | archiver | 2000 | 63 | 23-06-2002 23:19 |
| DC Motor current to an Analog Input | junkyarddawg | Motors | 43 | 04-04-2002 15:53 |