Author Topic: RC Circuits  (Read 622868 times)

Fu-Kwun Hwang

  • Administrator
  • Hero Member
  • *****
  • Posts: 3062
    • Enjoy the fun of physics with simulations
RC Circuits
« on: January 29, 2004, 10:24:49 pm »
Registed user can get files related to this applet for offline access.
Problem viewing java?Add http://www.phy.ntnu.edu.tw/ to exception site list
If java program did not show up, please download and install latest Java RUN TIME



R= kohm, C= uF,V= V



This java applet try to show the transient behavior that occurs when the capacitor is being charged and discharged.
1. You will find a circuit with 10 Volt Voltage source, 100kohms resistor and a 100uF capacitor in series.(k=103 , u=10-6 )
 You can select different value of voltage/resistance/capacitance. (select value then Hit Update button!)
 Or click within the cyan area(near battery), and drag the mouse up/down to change voltage.
2. Press Start to start the animation, Voltage of capacitor(Vc) and resistor(Vr) are shown near the elements.
3. There is a switch to control the flow path of the circuit.
    Click near the (Red) switch to toggle between charging stage and discharging stage.
    horizontal position -> charging
    vertical position -> discharging.
    Red curve shows voltage as a function of time. V(t)
    Blue curve shows current as a function of time.I(t)

4. If you click the mouse button twice,the timing t will be reset to zero.
5. The animation is suspended when you press the mouse button.
   If you click with left mosue button,animation continues when you release the mouse button.
   If you click with the right mouse button,you will need to press the mouse again to resume.
6. While the animation is suspended, move the mouse in the Vc(t) or T(t) plot area
 Value of Vc, I and t. corresponse to mouse position will be displayed.
 If you drag the mouse, It will show relative value.

If you really know what you are doing (You can change parameters in the applet)
Please enter reasonable value and Hit SETUP Button
R= kohm, C= uF, V= V

For example: Keep order of time constant (R*C) about several seconds.
Default value: R=100kohm, C=100uF give time constant = 10 seconds.


For the charging cycle: $V_s=V_R+V_C=I R + int frac{I dt}{C} $ where Vs is the voltage from the power supply.
$0=R frac{dI}{dt}+ frac{I}{C} $, $frac{dI}{dt}=-frac{I}{RC}$, so the solution is $I(t)=I_0 e^{-t/(RC)}$
at $t=0, V_c=0$ so $I(t=0)=I_0=V_s/R$
The result is $V_R(t)=I(t) R =V_s e^{-t/(RC)}$, $V_c(t)=V_s-V_R(t)=$ $ V_s (1- e^{-t/(RC)})$


Registed user can get files related to this applet for offline access.
Problem viewing java?Add http://www.phy.ntnu.edu.tw/ to exception site list
If java program did not show up, please download and install latest Java RUN TIME

  • Guest
RC circuit applet
« Reply #1 on: January 30, 2004, 08:52:54 am »
Subject: RC circuit applet
Date: Sun, 11 Jan 1998 06:41:16 +0000 (!!!First Boot!!!)
From: "Samara, Thomas Nick" <thomas.n.samara@vanderbilt.edu>
To: hwang@phy.ntnu.edu.tw
Dear Author,
Thanks alot for your program.
I couldn't quite find in the book a description of what the current was doing while the capacitor was charging.
Please make more programs like it.
Thanks.

j2grande

  • Newbie
  • *
  • Posts: 1
RC Circuit
« Reply #2 on: February 16, 2006, 12:25:11 pm »
Utter Perfection!
Best display of an RC circuit, helped me out big time with my physic lab.

Thanks
J

richard.summerfield

  • Teacher
  • Newbie
  • *
  • Posts: 1
topic31
« Reply #3 on: April 15, 2006, 01:40:48 pm »
Many thanks for this wonderful applet.
I am teaching basic electronics to arabic students in English. This animation really helped.
 :D

shelton

  • Newbie
  • *
  • Posts: 1
Re: RC Circuits
« Reply #4 on: April 17, 2007, 06:12:04 pm »
absolutely brilliant!!!! thankyou very very much Fu-Kwun Hwang!

Regards
Shelton
Australia.

jjplaw

  • Newbie
  • *
  • Posts: 2
Re: RC Circuits
« Reply #5 on: July 19, 2007, 10:18:48 am »
Hi,

This is a great tool indeed for teaching RC circuit. But it think there is an error in the applet.

When discharging, the blue line (I) plots outside the graph. Anyone else having this problem?

Justin
Malaysia

jjplaw

  • Newbie
  • *
  • Posts: 2
Re: RC Circuits
« Reply #6 on: July 19, 2007, 10:36:44 am »
Greetings,

I saw a new version of this on the other websites. Is it possible to upload the new version here?


Justin
Malaysia

Fu-Kwun Hwang

  • Administrator
  • Hero Member
  • *****
  • Posts: 3062
    • Enjoy the fun of physics with simulations
Re: RC Circuits
« Reply #7 on: July 20, 2007, 11:29:10 pm »
You can show the applet if you know the java applet tags(you can copy it from the web page).
At least , you can provide the URL of the web page.

Hi,

This is a great tool indeed for teaching RC circuit. But it think there is an error in the applet.

When discharging, the blue line (I) plots outside the graph. Anyone else having this problem?

Justin
Malaysia
The voltage show negative value because the selection of sign in voltage.
There is no problem, just the difference in the interpretation of the meaning.

I am currently in Malaysia now. (I was conducting a 3-days workshop at the Univ. of Malaysia. Now, I am conducting another workshop for Chinese school in Malaysia.) I will be back to Taiwan on July 22.

clickass

  • Newbie
  • *
  • Posts: 1
Re: RC Circuits
« Reply #8 on: February 15, 2008, 09:22:14 pm »
far great than book.thank for simulation.
could you name few books for bistable multivibrator?

downcast

  • Newbie
  • *
  • Posts: 3
Re: RC Circuits
« Reply #9 on: February 19, 2008, 10:48:52 am »
Hi over there, currently stuck with 1 JAVA assignment for RC transient response. I need help/reference for the source code, im using NetBeans IDE 4.1 for the assignment, i would glad if someone could help me out on this.

Fu-Kwun Hwang

  • Administrator
  • Hero Member
  • *****
  • Posts: 3062
    • Enjoy the fun of physics with simulations
Re: RC Circuits
« Reply #10 on: February 19, 2008, 04:11:10 pm »
Do you know how to use the Runge-Kutta 4th order method to solve the differential equation?
You can write your own code or get it from the web. And you should be able to solve the RC transient response.
Since it is your assignment, it is better if you can code it by yourself.  Try to learn Runge-Kutta 4th order method first. ;)
 

downcast

  • Newbie
  • *
  • Posts: 3
Re: RC Circuits
« Reply #11 on: February 19, 2008, 09:42:09 pm »
I had juz started to learn JAVA for 3 weeks time... so i would like to search for help.... about Runge-Kutta 4th Order Method, i got no idea on this. Well the basic idea of this assignment is to attach a 3 scroll bar which allow us to adjust the Resistor(R),Capacitor(C) and Voltage(E) value accordingly and a charging / discharging graph would be plotted automatically. I just dunno how to start with the code and equation.

BTW, can use Euler??
« Last Edit: February 19, 2008, 09:49:01 pm by downcast »

Fu-Kwun Hwang

  • Administrator
  • Hero Member
  • *****
  • Posts: 3062
    • Enjoy the fun of physics with simulations
Re: RC Circuits
« Reply #12 on: February 19, 2008, 10:25:39 pm »
For simple RC-circuit, the solution can be obtained analytically without numerical calculation.
For example: V(t)=Vc(t=0)* e-t/(RC) for charging a capacitor.
You can get parameters(R,C,E=Vc)  and draw it with java code (and you can find formula from any textbook).

However, if you need to solve it numerically. You need to learn numerical methods.
Runge-Kutta's 4th-order method will give you much better result than Euler's method.

downcast

  • Newbie
  • *
  • Posts: 3
Re: RC Circuits
« Reply #13 on: March 04, 2008, 05:39:23 pm »
I had done the part for charging capacitor so far, but it oni work for t=0, as u keep pressing, the t will increase.... i would like to request how u program it to count the charge automatically without keep clicking it?

Fu-Kwun Hwang

  • Administrator
  • Hero Member
  • *****
  • Posts: 3062
    • Enjoy the fun of physics with simulations
Re: RC Circuits
« Reply #14 on: March 04, 2008, 10:07:41 pm »
For java programming, you can add thread to ask java run some job continuously. It is a standard java programing method, you should be able to find out how it can be done with any java programming books (or online tutorial).
I have created this program almost 10 years ago with JDK1.0.2
May be there are better way to do it. If you need java programing help. please check out other related web site.
If you need help in physics, I will try to help. But I do not have time to read how it can be done with latest java. I use EJS to create new simulations since 2001. EJS is a tool which I do not need to know much about java programming, I just need to concentrate on the physics model. So if you are interested in java programming, you should ask some other expert. If you just want to create scientific java simulation without too much programming skill. I would suggest you use EJS.
You can find latest information about EJS from http://fem.um.es/EjsWiki