LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Battery charging

Hi all,

 

I am creating an application where a user can charge 8 lead acid batteries on a jig.. The hardware is done by switching Relays ON/OFF to charge the batteries for a set time and then discharge them to see if the batteries are fit for use.

 

this is my plan:

 

1. Monitor the analogue IN port on the DAQ 6008 to see if any batteries are sonnected to the Jig

2. If they are, then start charging

3. while charging, Poll the digital port to see if any batteires have been charged.

4. If the battery is charged, then turn the Relay to Discharge them and store the data.

5. After discharging for a set amount of time, compare the data to the data obtained from a golden sample and indicate if the battery is passed.

6. charge the batteries to the full value and disconnect from the jig.

 

I got the 1st 2 points working as I wanted to.

 

It is the points after that I am having a bit of trouble with..


Basically, I want to charge 4 of the batteries at the same time and when one or more is charged / (Step 6), then ask the user to disconnect the ones that are charged and passed and connect the next 4.

the main reason why I had to do this is because

1. I was going out of DIO ports on the DAQ

2. would need a beefy PSU to charge all 8 at once.

So I decided to charge 4 of em at 500mA with a supply that can give a current of 3.6A.

 

anyways, since I would like to do this charging and discharging in parallel so that the user can connect/disconnect any one of them and plug another one and charge em.... Im guessing I would need 8 loops running inside on Big loop..

 

what are your suggestions?

 

Much appreciated.

 

Thanks

 

0 Kudos
Message 1 of 10
(3,814 Views)

Hi LABMAT,

 

If only four can be charged at once, surely you can just have 4 state machines (ie while loops with case structures - a seperate case for each state of the process), and move the leads from one battery to the next?

 

You shouldn't need to have a big while loop around the 4 seperate ones as the state machines can be configured to restart themselves. In order to stop you would need a local variable or a notifier to tell all the state machines to stop at once.

 

Let me know if you would like some dummy code to work with if this sounds like what you are after.

 

Kind regards,

0 Kudos
Message 2 of 10
(3,771 Views)

Hi Laurence,

 

~thanks for getting back to me.

just to get this straight.....

 

are you saying that I could have 4 loops running at the same time... and each one of em running a state machine to charge or discharge the batteries??

 

Thanks,

 

Labmat

0 Kudos
Message 3 of 10
(3,764 Views)

Yes. That would be a valid solution if your four batteries didn't have to interact with each other 🙂

0 Kudos
Message 4 of 10
(3,757 Views)

How do you handle cases where the battery is nearly discharged?  Lead acid batteries generally do not like to be completely discharged.  A timed discharge could deep-cycle the battery acidentally, causing damage?  Or are these batteries designed to be deep-cycled?

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 5 of 10
(3,747 Views)

each battery has it's own charge characteristic, i would monitor the voltage over time during the charge and discharge cycles. the slopes (pos/neg) of the charge/discharge profile of each would tell me the conditions, whether fully charge or deep discharge...

0 Kudos
Message 6 of 10
(3,738 Views)
Yes.. exactly as apok said, that'show I was planning to do.. the charging and discharging is done by 4 spdt relays. WHen the bats are charging, the monitor signal from the charge controller chip is polled to see If any has been charged and if so, the daq will set it to discharge... and monitor the output voltage over say... 1 hour by discharging it via constant load...
ANd then plot / save the data in a spread sheet.

I know these bats do not like to be deep discharged, bt, I cnt think of any other way to discharge them.
AFTer the discharge; the batteries would be charged back ready to be used somewhere..
hopethis clears da doubt...

THnx
Labmat
0 Kudos
Message 7 of 10
(3,724 Views)

hi there,

 

I got over the previous issue.

right now, I want to ask how we can say a lead acid battery is good or bad from the discharge voltage, current and Resistance over a period of an hour.

 

At the moment, I am reading the analogue values every minute for 1hour 15 mins and saving the data in a file.

After this stage, I read the data and hence come to the conclusion that the battery is good or bad.

 

How can I do this ? I know the straight forward suggestion would be to check the datasheet of the battery...and I am using the data from the datasheet to mae the conclusion.

 

In the datasheet, it shows a discharge curve for various times... How can I use that to compare to the results I obtained and hence prove that a battery is good or bad?

 

any suggestions would be welcome.

 

Thanks,


Labmat

0 Kudos
Message 8 of 10
(3,658 Views)

Why don't you do a regression analysis on your data, linear or non-linear (you can fool the linear regression analysis by taking the time and raise it to 2, 3, etc and apply the regression). You then can look at the coefficients and determine how far they diverge from the ideal coefficients. You can decide what your divergence criteria to say it is good or bad.

0 Kudos
Message 9 of 10
(3,648 Views)

Hi Joseph,

 

thanks for getting back to me..

 

Is there a VI that can do this analysis or do we have to code it?

 

Thanks

Labmat

0 Kudos
Message 10 of 10
(3,646 Views)