Jump to content
Ford Fusion Energi Forum

EV Dynamics Physics Experiment


larryh
 Share

Recommended Posts

The following posts describe an experiment I performed the other day with the car to understand the forces and their effect on the motion of an EV. 

 

For the first part of the experiment, I drove the car with cruise control set to various speeds along the same section of road and measured the electrical input power and mechanical output power of the motor required to maintain constant speed.  This allowed me to plot the power required to overcome friction (aerodynamic drag, tire rolling resistance, and internal frictions) as a function of speed.  

 

Next I did a coast down on the same section of road.  With the car in neutral, I recorded time vs. speed as the car slowed down.  I also recorded the power output of the motor.  The power output of the motor is negative during coast down.  Internal friction inside the motor is slowing the car down.

 

The outside temperature was 63 F.  There was no wind.  The road that I am using is level to within 1.5 feet. 

I drove the car for approximately 20 miles, with the ICE running, prior to the experiment.  I wanted to make sure the car was thoroughly warmed up before starting.   The temperature of the drivetrain components in a car have a huge impact on the internal friction within the car.  When cold, the car will require significantly much more energy to maintain constant speed.  As the car warms up, each time I repeated a portion of the experiment, I would get very different results. 

Link to comment
Share on other sites

Power Required to Maintain Constant Speed

 

For the first part of the experiment, I drove the car at various constant speeds (10, 20, 30, 40, and 50 mph) along the same section of road and measured the electrical input power and mechanical output power of the motor.  The results are plotted below.  Since a motor is not 100% efficient, the input power to the motor will be greater than the output power.  The difference reflects losses in converting electrical to mechanical power. 

 

The car provides the rpm and torque output by the motor.  The power (in watts) can be computed as 2*pi*rpm*torque/60.  I suspect that the car does not actually have a sensor to measure the output torque of the motor.  Instead, it estimates the torque based on the electrical input power applied to the motor.  So the output power of the motor is only an estimate.

 

Driving 30 mph requires approximately 3.7 kW of electrical power from the HVB.  Driving 50 mph requires 9.8 kW.  The cubic equations describing power as a function of speed are shown in the plot.  The frictional force from aerodynamic drag varies with the square of speed.  Power = Force * Speed.  Hence power is described by a cubic function of speed. 

 

Motor%20Power%20vs.%20Speed_zpsya4iivse.

Edited by larryh
Link to comment
Share on other sites

Coast Down

 

For the second part of the experiment, I did several coast downs with the car in neutral starting from various speeds along the same section of the road.  I then spliced the results together and plotted them below.

 

The plot shows speed as a function of time.  Speed is in meters/second and time is in seconds.  At time 0, the car is going 17 m/s (38 mph).  After about 88 seconds, the speed has fallen to 6.9 m/s (15 mph).

 

The speed is described by a quadratic equation of time as indicated in the chart below.

 

Coast%20Down%20in%20Neutral_zpsmbtlszb7.

Edited by larryh
Link to comment
Share on other sites

Coast Down Analysis

 

The next step is to compute the power loss from friction in the coast down experiment.  If there were no friction, the car would maintain constant speed indefinitely.  But since the car is slowing down, frictional forces (aerodynamic drag, tire rolling resistance, internal frictions) must be at work.

 

Force of friction = mass * acceleration.  We have a plot of the car’s speed as a function of time.  The derivative provides the acceleration of the car vs. time.  The curb weight of the car is 3913 lbs.  We need to add the weight of the contents of the car, which I estimate to be about 260 lbs.  We also need to account for the moment of inertia of the various rotating parts of the car, including the wheels and gears.  This increases the apparent mass of the car during coast down.  Generally this amounts to about 3% - 4% of the mass of the car.  I will use 100 lbs.   The mass of the car is thus approximately 1940 kg. 

 

From Power = Force * Speed, we can compute the power loss from friction.   The plot below shows the power loss from friction as a function of speed.  At 40 mph, the power loss is -5.5 kW.  At 20 mph, it is -1.7 kW.  The power loss as a function of speed is given by a quadratic function as indicated in the plot below.

 

Power%20Loss%20From%20Friction_zpsg3vel8

Edited by larryh
Link to comment
Share on other sites

Combining Results of the Two Experiments

 

Let’s now combine the results from the two experiments.  One would expect that the mechanical output power of the motor should match the power loss from friction for the car to maintain constant speed.  If the motor provided more power, then the additional power over friction would accelerate the car.  If the motor provided less power, then the greater power loss from friction over the output power of the motor would slow the car down. 

 

The following chart shows the power loss from friction and the motor input/output power for various speeds, i.e. I combined the plots in posts 2 and 4.  I am showing the power loss from friction as a positive number to compare with the motor input/output power. 

 

Something is wrong.  The motor appears to be outputting less power (red line) than is required to overcome friction (blue line).  According to the plot, the car should be slowing down—the motor is not providing enough power.  There appears to be something wrong with this analysis.  What is missing is that the motor has internal friction which we have not taken into account.   

 

Friction%20Power%20Loss%20vs.%20Motor%20

Edited by larryh
Link to comment
Share on other sites

Motor Internal Power Loss

 

During the coast downs, the mechanical power output from the motor was negative.  I am interpreting that to mean that there is friction internal to the motor which slows the motor, and the car, down.   A spinning motor must experience friction from the various bearings inside the motor.  The spinning rotor has to move lots of air.   And, there is probably a long list of other phenomena that cause power losses internal to the motor.

 

Before the motor can output any power, enough input power must be supplied to overcome the internal power losses.  If less power is supplied, the motor will slow down.   In additional to the various mechanical power losses mentioned previously, there are also various sources of electrical power losses.  For example, the inverter is not 100% efficient in converting DC to AC. 

 

The following plot shows the estimated power loss due to internal friction of the motor vs. speed during the coast downs.  At 20 mph, the loss is approximately 0.7 kW.  At 40 mph, it is approximately 1.3 kW.

 

Motor%20Internal%20Power%20Loss_zpspxrjx

Edited by larryh
Link to comment
Share on other sites

Incoporating Motor Internal Power Loss in Experimental Results

 

Now let’s incorporate the internal motor power loss into the experimental results.  The motor converts electrical power to mechanical power.   In order for the car to maintain constant speed, the motor must convert enough electrical power, Pm, to mechanical power to overcome the internal friction of the motor as well as the other sources of friction experienced by the car, Pc (aerodynamic drag, tire rolling resistance, friction internal to the car other than from the motor).   

 

During the coast downs, we measured Pm + Pc, the total internal friction from all sources.  Both the internal motor friction and the other sources of friction were slowing the car down.  During the constant speed experiment, we measured the power output of the motor.  This is the output power of the motor after losses due to internal motor friction, i.e. Pc. These power measurements do not include the losses due to internal motor friction.  The sensor at the motor output only measures the power being output by the motor.  It does not measure any losses occurring inside the motor. 

 

The following is the same plot as in post 5, but with the power loss associated with the internal friction of the motor is subtracted from the power losses due to all sources of friction during the coast downs.  Now the red (power output of motor for constant speed) and blue (coast down power losses from friction excluding internal motor friction) lines coincide.  The motor outputs exactly the power needed to overcome friction.  The laws of physics are preserved!  There are some slight discrepancies near the extremes of the blue line.   But those are regions were I don’t have good coast down experimental results.  To compute acceleration, I take the derivative of speed vs. time from the coast down results.  But at the edges, I cannot compute accurate derivatives—I need to record data with speeds lower and greater than the edge speeds to compute an accurate derivative.

 

 

Friction%20Power%20Loss%20vs.%20Motor%20

Edited by larryh
Link to comment
Share on other sites

Modelling an Electric Motor

 

The above results suggest a very simple model for how an electric motor operates.  The motor converts a fraction of the total electrical power received from the HVB battery to mechanical power.  Before it can output any power, it must convert at least enough electrical power to overcome the power losses due to internal friction.  Thus the power output of the motor is:

 

Po = e * PiPl(rpm),

 

where Po is the mechanical output power of the motor, Pi is the electrical input power to the motor, e is the efficiency of the inverter and motor in converting electrical to mechanical power, and Pl is the mechanical power loss of the motor due to internal friction which is a function of the rpms of the motor.

 

The following graph plots motor efficiency neglecting internal friction, e = (Po + Pl) / Pi, vs. input power using the experimental results.  As you can see, e is a constant of approximately 88%.

 

motor%20efficiency%20neglecting%20intern

Edited by larryh
Link to comment
Share on other sites

Actual Motor Efficiency

 

The actual motor efficiency, including internal friction, is then Po / Pi.  I have plotted this ratio vs. input power using the experimental results below.  Efficiency increases with increasing power.  Input power of 10 kW corresponds to 50 mph.  Input power of 3.7 kW corresponds to 30 mph.

 

Motor%20Efficency%202_zps4avbpdbw.png?t=

Edited by larryh
Link to comment
Share on other sites

Motor Output for Trip With Acceleration

 

So far, I have only considered EV dynamics for constant speed and coast downs.  Now let’s see what happens when acceleration is involved.  In the trip under consideration, I start out at rest and accelerate slowly to 20 mph (actually I overshoot 20 mph a bit) and then maintain constant speed.

 

I can predict the power output of the motor as follows.  The motor is going to have to supply the kinetic energy required to accelerate the car to 20 mph.  Plus it is going to have to supply the power required to overcome friction (which is a function of speed).  For convenience, I will assume that 100% of the output power of the motor is transmitted to the road to propel the car.  Of course, in reality, there are some losses in transferring power to the road, but they should be small.

 

The kinetic energy of the car is given by 0.5 * mass * speed^2.  The power required to overcome friction at a given speed is given by the chart in post 2.  Adding the energy for these two sources together, I plot the results in the chart below.

 

The entire trip takes just over 60 seconds.  The blue line shows the predicted accumulated energy output of the motor vs time.  The red line shows the actual.  The two lines match quite closely.  They are not going to coincide perfectly.  The road is not perfectly level, there may be slight wind gusts, the transmission is not 100% efficient, etc.  They coincide well within measurement error.

 

Slow%20Accel%20to%2020%20mph_zpsyyixkpgh

Edited by larryh
Link to comment
Share on other sites

Motor Input for Trip With Acceleration

 

It’s not really the Motor Output that we are concerned with.  Instead, we are interested in the amount of electrical energy the HVB must supply to the motor.  We can use the model of the electric motor in post 8 to predict the amount of energy that the HVB must supply for the trip in the previous post.  The results are shown in the plot below.  This time I am plotting the energy required from the HVB to propel the car.

 

Slow%20Accel%20to%2020%20mph%20HVB_zpszx

Edited by larryh
Link to comment
Share on other sites

Transmission Losses During Acceleration

 

In Post 10, I provided a graph showing the actual and predicted energy output of the motor during slow acceleration to 20 mph.  In that analysis, I assumed that the transmission was 100% efficient, i.e. all of the power output by the motor is used to propel the car.  A real transmission has losses.  A portion of the power output by the motor is consumed to overcome internal friction within the transmission and converted to heat causing the transmission to warm up.   In addition, the tires do not grip the pavement perfectly.  The tires slip some on the pavement which causes the tires and pavement to warm up.   

 

The following plot is similar to the one in Post 10.  This time I accelerate faster up to 50 mph in 27 seconds and then maintain that speed until a total of 38 seconds has elapsed.  The blue line shows the predicted energy output of the motor if the transmission and tires were 100% efficient in transmitting power to propel the car.  It includes the kinetic energy needed to accelerate the car to 50 mph plus the energy needed to overcome friction (aerodynamic drag, tire rolling resistance, and internal friction within the car), i.e. the power required to maintain speed.  The red line shows the actual energy output of the motor.  There is a large difference in the predicted and actual energy output of the motor.  Energy is being lost somewhere.  I am assuming that is being lost by the transmission and by tire slippage on the pavement.

 

Energy%20Output%20of%20Motor%20vs.%20Tim

Edited by larryh
Link to comment
Share on other sites

Transmission Efficiency

 

We can calculate the predicted power output and actual power output of the motor during acceleration in the previous post by computing the slope of the red and blue lines between 6 and 24 seconds.   Doing this, I compute the actual power output of the motor to be 28.8 kW.  The predicted power output is 26.4 kW.  Efficiency is 26.4 / 28.8 = 92%.   8% of the power output of the motor is being lost by the transmission and tires. 

 

But this not really the calculation that is of interest.  Of greater interest is how much additional energy the motor must output to provide the kinetic energy to accelerate the car.  To do that, we must first subtract the energy used to maintain speed (overcome aerodynamic drag, etc.) from the previous plot.  When I do that, I calculate the actual power output of the motor, above the power required to maintain speed, to be 27.7 kW.  This is the portion of the motor power output used exclusively to accelerate the car (beyond that required to overcome frictional forces).  The predicted power required to provide the kinetic energy is 22.8kW.   Only 22.8 / 27.7 = 82% of the output power of the motor is actually converted into kinetic energy to accelerate the car.   The rest is lost. 

 

If we assume that the motor is 88% efficient converting electricity to mechanical energy, then 72% of the energy from the HVB used to speed of the car is actually transformed into kinetic energy.   It requires 0.16 kWh of kinetic energy to accelerate to 55 mph.  That means that we will consume about 0.16 / 0.72 = 0.22 kWh of energy from the HVB to provide that kinetic energy.  The remaining 0.06 kWh of energy is lost forever and cannot be recaptured by regenerative braking.

Link to comment
Share on other sites

Efficiency of Motor in Provide Kinetic Energy

 

The following plot shows the percentage of energy from the motor that is converted into kinetic energy from five different accelerations.   I am not sure how accurate my calculations are.  There is a lot of uncertainty involved.  But it looks like the slower you accelerate, the greater the percentage of energy transmitted from the motor to provide the kinetic energy required to accelerate the car, i.e. slow acceleration is more efficient than fast acceleration.  I would have to collect a lot more data to provide conclusive results.

 

Efficiency%20of%20Motor%20in%20Providing

Edited by larryh
Link to comment
Share on other sites

Larry,

 

This is awesome - Thanks for doing all this! As an engineer and data scientist, I find it fascinating. Electronically logging detailed data from the Fusion Energi and analyzing it is on my "if I had just a little more time, I'd..." list. I'm really glad you're doing the work for all of us, and I enjoy your explanations... Keep it coming!

 

Kent

Link to comment
Share on other sites

Collecting Accurate Measurement Data

 

The plot below shows some of the measurements I collected when determining the output power of the motor required to maintain a constant speed of 20 mph.  I collected the measurements on a relatively level East-West road when the wind was calm.  I traveled in both directions to verify that I get the same results going in either direction.  I collect GPS, power, and speed measurements from the car about every half a second. 

 

The x-axis is GPS longitude along the road.  The total distance in the plot is about 1,600 feet.  Roads aren’t level for very long distances.  The green line shows the elevation of the road from Lidar data.  You need to add approximately 900 meters to what is shown.  The elevation varies by about 0.4 meters or about 1.3 ft.  The Lidar data is accurate to within a few inches. 

 

The purple line shows speed when traveling East and the light blue line shows speed while traveling West.  You need to add 19 mph to what is shown.  When going East, I start the measurements at -92.748 Longitude and end the measurements at -92.745 Longitude.  The speed varies by just under 0.2 mph.

 

The output power of the motor while traveling East is shown by the blue line.  The red line shows the power measurements when traveling West.  You will notice that the red line is higher than the blue line.  That makes sense since there is a slight downward slope to the road going in the Easterly direction—gravity is assisting in propelling the car so the motor doesn’t have to work so hard. 

 

Without compensating for the speed or elevation changes, the average power measured going East was 0.99 kW.  When going west it was 1.23 kW.  This is a difference of 0.24 kW, or a 24% error (I should get the same results in either direction).  If I adjust for the elevation change in the road using PE = mgh (where PE is potential energy, m is the car’s mass, g is the Earth’s gravitational constant, and h is the elevation) and for the speed changes of the car during the trip using KE = 0.5mv^2 (where KE is kinetic energy, m is the car’s mass, and v is the car’s speed), I get 1.19 kW for the Eastbound direction and 1.24 kW for the Westbound direction.  The difference is now 0.05 kW for an error of 4%--much better.  Note that the 1.3 foot elevation change has 10 times more impact on the results than the 0.2 mph speed change.

 

20%20mph%20Constant%20Speed%20Motor%20Ou

Edited by larryh
Link to comment
Share on other sites

Transmission Efficiency

 

I computed transmission efficiency for several more accelerations.  The following plot shows the percentage of energy output from the motor that is converted into kinetic energy to accelerate the car, i.e. transmission plus tire slippage efficiency.  It looks like efficiency is about 96%.  The accuracy of the measurements is roughly +/- 2%.

 

 

Transmission%20Efficiency_zpsfutavhz2.pn

Edited by larryh
Link to comment
Share on other sites

Determining Transmission Efficiency

 

The following plot illustrates how I am computing transmission/tire slippage efficiency.   It shows energy consumption vs. time during acceleration.  The purple line is Potential Energy, i.e. energy required to climb the slight incline of the road.  The light blue line is the energy required to overcome friction, i.e. aerodynamic drag, tire rolling resistance, and internal frictions.  The green line is the Kinetic Energy of the car, which increases as the car speeds up.  The blue line is the sum of the Kinetic Energy, Friction Losses, and Potential Energy.  This is the total energy required to accelerate the car. 

 

The red line is the actual mechanical energy output of the motor.  If the drivetrain were 100% efficient, the red and blue lines would coincide.  Due to losses in the drivetrain, the motor outputs more energy than is required to propel the car.  The excess energy is lost mostly to heat. 

 

Power is the derivative with respect to time of energy, i.e. the slope of the lines in the graph.  The average power output of the motor is 28.61 kW, i.e. the slope of the red line.  The average amount of power required to propel the car is 27.64 kW, i.e. the slope of the blue line.  The efficiency of the transmission is thus approximately 27.64 / 28.61 = 97%.

 

Energy%20Consumption%20During%20Accelera

Edited by larryh
Link to comment
Share on other sites

Transmission Efficiency

 

I collected some more data for fast accelerations and updated the transmission efficiency chart.  The graph shows the percentage of energy output from the motor that is converted into kinetic energy to accelerate the car, i.e. transmission plus tire slippage efficiency.  It looks like efficiency is 96% - 97%.  I am unable to obtain accurate enough data to determine if transmission efficiency varies with motor output power.  But if it does, it is not significant. 

 

Transmission%20Efficiency%202_zpslymymx8

Edited by larryh
Link to comment
Share on other sites

Motor Torque and Rpms During Acceleration

 

The first graph below shows the motor torque and power vs. rpms during fast acceleration.   The x axis is rpms.  7000 rpms corresponds to about 50 mph.  The blue line shows torque in newton-meter.    The motor torque quickly ramps up to a maximum of about 230 N-m.  Then torque falls off gradually after 2000 rpms.

 

The red line shows power.  Power ramps up linearly to a maximum of about 50 kW at 2000 rpms and then remains constant up to 7000 rpms (I didn’t accelerate past 50 mph). 

 

Torque, power, and rpms are related by the equation Power = 2*pi*torque*rpms/60.   From this equation, we can deduce that acceleration is limited by torque below 2000 rpms (about 14 mph), and by power above 2000 rpms.  Below 2000 rpms, torque is constant, so power is proportional to rpms.  Above 2000 rpms, power is constant, so torque is proportional to the reciprocal of rpms. 

 

The motor output power is the power output of the HVB divided by the motor efficiency.  In this instance, the HVB was supplying 56.5 kW of power and the motor was outputting 47.3 kW of power, i.e. efficiency was 84%.

 

Motor%20Torque%20and%20Power%20vs%20Rpms

Link to comment
Share on other sites

Modelling HVB Energy Consumption During Acceleration

 

From the information gathered in the previous posts, we can model energy consumption from the HVB during acceleration from rest to traveling at constant speed.   Consider a short trip, where the car starts at rest, accelerates slowly to 40 mph, and then continues at a constant 40 mph.  The graph below shows the predicted energy consumption and actual energy consumption for such a trip.  The x axis is time in seconds.  The y axis is energy consumed in kWh.  The car accelerates from time 0 to 40 mph in 55 seconds and then maintains constant speed. 

 

The blue line shows the actual energy output from the motor.  The red line shows the predicted output energy.   The predicted power output from the motor is the power needed to overcome friction (aerodynamic drag, tire rolling resistance, and internal frictions—see post 2), plus the power needed to supply the Kinetic and Potential Energy assuming the transmission is 97% efficient.  The blue and red lines coincide quite closely.

 

The green line shows the actual energy consumption from the HVB.  The purple line shows the predicted energy consumption.   The predicted power consumed from the HVB is given by the model of the motor described in post 8:  Po = e * PiPl(rpm).  I assume the efficiency e is 88%.  The Power Loss, Pl(rpm), is as shown in post 6.  The green and purple lines also coincide rather closely.  The light blue line shows the error.  The actual energy consumption from the motor is about 0.002 kWh more than predicted.  The entire discrepancy occurs within the first  2.5 seconds.  The model fails to take something into account during the initial 2.5 seconds of acceleration from rest.

 

Predicted%20vs.%20Actual%20Energy%20Cons

Link to comment
Share on other sites

Modelling HVB Energy Consumption During Fast Acceleration

 

The following graph is similar to the one in the previous post, except this time the car accelerates quickly from 0 mph to 50 mph in 13 seconds and then maintains constant speed.    Again the red and blue lines, showing predicted and actual energy output of the motor, coincide rather closely.

 

However, this time the purple and green lines, showing predicted and actual energy consumption from the HVB, do not coincide so well.  The light blue shows how much more energy is consumed from the HVB than predicted by the model, about 0.013 kWh.  Again, all of this error occurs in the first 4 seconds.  Something strange happens when accelerating from rest during the first few seconds.  That is when most the additional actual vs. predicted energy is consumed from the HVB.  To avoid wasting energy, you would want to accelerate slowly from rest, at least initially, to avoid this loss. 

 

I am going to guess that abrupt changes in power cause excessive energy losses above that predicted by the model.  Since the red and blue lines coincide closely, this does not seem to be a mechanical energy loss, but rather an electrical one.   But I’m not sure that the car is actually measuring the output torque of the motor rather than estimating it from the input power supplied to the motor.  In that case, it could well be a mechanical energy loss.

 

Predicted%20vs.%20Actual%20Energy%20Cons

Edited by larryh
Link to comment
Share on other sites

I am going to guess that abrupt changes in power cause excessive energy losses above that predicted by the model.  Since the red and blue lines coincide closely, this does not seem to be a mechanical energy loss, but rather an electrical one.   But I’m not sure that the car is actually measuring the output torque of the motor rather than estimating it from the input power supplied to the motor.  In that case, it could well be a mechanical energy loss.

 

 

The reason for the additional energy losses during fast acceleration is that the efficiency of the motor is also a function of torque (and not just rpms).  The model I proposed, Po = e * PiPl(rpm), is too simplistic.   Torque affects the efficiency e of the motor, so e is not really a constant. At high torque, the motor is less efficient.  It appears the motor is not as efficient at low rpms and high torques, which is what you have when you accelerate quickly from rest.  Fast acceleration wastes energy.

Edited by larryh
Link to comment
Share on other sites

Revised Model for Electric Motor

 

In post 8, I provided a very simple model of an electric motor.  Given the discrepancies above, I am revising that model slightly.  The new equation describing the operation of the motor is:

 

Po = e(torque,rpm) * PiPl(rpm),

 

where Po is the mechanical output power of the motor; Pi is the electrical input power to the motor; e(torque,rpm) is the efficiency of the inverter/motor converting electrical to mechanical power,  which is no longer a constant, but instead a function of both torque and rpms; and Pl(rpm) is the mechanical power loss of the motor due to internal friction, which is a function of the rpms of the motor. 

 

I have already shown Pl(rpm) in post 6.  Previously, I assumed e(torque,rpm) was a constant equal to 88%.  That is not true.  In general, the higher the torque, or the lower the rpm, the lower the efficiency e.  The following graph plots e as a function of rpm.  The markers are spread out because the torque varies from one measurement to the next and efficiency depends on torque.  The lower markers are measurements with higher torque.  The x axis indicates rpms.  The y axis indicates efficiency e.  Efficiency increases with increasing rpms from  0 and 2000 rpms (15 mph), and then flattens out.   You want to minimize power output of the motor when traveling less than 15 mph, as this is where the motor is least efficient.  In particular, you want to accelerate gently until 15 mph.  After that, the motor will be operating near peak efficiency of 88%.  If you use maximum acceleration, the motor will be initially operating at less than 60% efficiency. 

 

Actually, the efficiency does not flatten out after 2000 rpms at a given torque.  For a specified torque, efficiency peaks at some rpm and then begins to fall again.  The peak occurs at higher rpms for lower torques. Efficiency just appears to flatten out in the graph below because the torque is not constant from one measurement to the next--there are a series of peaks corresponding to each torque. 

 

 

Motor%20Efficiency%20erpm_zpsnwjcfjpa.pn

Edited by larryh
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...