My homebuilt VFD progress

AC, DC, amps, volts and kilowatt. It's all discussed in here
User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 18:37

weber wrote: Your anti-parallel diodes are all blown and the IGBT's are going into reverse breakdown at about 20 volts?


Interesting (and terrifying) thought. I took my meter out and measured the Vf for each IGBT. None are open circuit in the forward direction and none are shorted in the reverse direction. Though I do find it odd that I'm getting a drop of 0.33v across both diodes in one module and 0.22v in both diodes in the other two modules. For comparison, a brand new, just removed from the packaging to do this check module has 0.33, so that -may- be noteworthy. Either way, both numbers are very small for silicon diodes, but not unusual for IGBTs (one of my 600a modules also has the 0.33v drop). I'm not worried about the diode drop measurement because of the consistency I'm seeing between phases (see below).

Here are some useful and possibly telling scope traces:

Here is a trace of the voltage between E2 and C2E1 for one module with no load connected:
Image

Here is a trace of the voltage between C1 and C2E1 for one module with my 11kw motor connected:
Image

And for comparison, the gate drive pules for G2:
Image

I am pleased to see that the traces with and without load are practically identical (I checked this across all phases with and without load). What I am not so pleased to see is the 20v deltaY between the phase and the 0v reference when the IGBT is on.

The gates voltages are exactly within spec. +18.2v, -5v, so I don't see how these could be "partially" on, but there's that 20v I keep seeing. I'd double and triple checked that my probes and scope settings match.

Also, I verified with my multimeter that this trace from before reads at about 25vac:

Image

Any more thoughts from anyone?

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 18:40

Also, I'm not convinced that I have blown these IGBTs (or the diodes) because when I swapped them out for new ones, I did my first test on the little 370w motor, not the big one, and still got that same 20v drop.

User avatar
Johny
Senior Member
Posts: 3729
Joined: Mon, 23 Jun 2008, 16:26
Real Name: John Wright
Location: Melbourne
Contact:

My homebuilt VFD progress

Post by Johny » Fri, 09 Nov 2012, 18:43

Could the residual 20V you see, be the difference between turn-off times (in software) from upper IGBTs to lower IGBTs. If the upper IGBTs are generally on for longer then the phases resudual voltage will move in that direction.
That 25VAC waveform, could it be caused by the same effect - different turn off times?

User avatar
Johny
Senior Member
Posts: 3729
Joined: Mon, 23 Jun 2008, 16:26
Real Name: John Wright
Location: Melbourne
Contact:

My homebuilt VFD progress

Post by Johny » Fri, 09 Nov 2012, 18:47

Stiive wrote: there is no spoon
OK, I'll bite - huh! Image

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Fri, 09 Nov 2012, 18:52

Johny wrote:
Stiive wrote: there is no spoon
OK, I'll bite - huh! Image


A wise bald girl once said

"Do not just try and spin the motor.. for that is impossible...

instead... only try to realise the truth....

[the truth?]
There is no motor.

Then you will see it is not the motor that spins... it is only yourself."


Matrix :p

Rgds,
Stiive

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 18:53

Johny wrote: Could the residual 20V you see, be the difference between turn-off times (in software) from upper IGBTs to lower IGBTs. If the upper IGBTs are generally on for longer then the phases resudual voltage will move in that direction.
That 25VAC waveform, could it be caused by the same effect - different turn off times?
A result of the deadtime you mean? I'm not sure. There is only 2uS of deadtime between the top and bottom gates turning on (which may very well be excessive), but the decay seen there is approaching 40uS. It looks like you can see the output "float" high for a brief moment (about 1/10th of a division, or 2uS) at the beginning of the falling edge for the "with load" trace". There is also a small visible transient about 2uS before the rising edge as well.

I'd be VERY happy to find that the problem I'm having is in the code rather than the hardware. Code is MUCH easier to change.

User avatar
Johny
Senior Member
Posts: 3729
Joined: Mon, 23 Jun 2008, 16:26
Real Name: John Wright
Location: Melbourne
Contact:

My homebuilt VFD progress

Post by Johny » Fri, 09 Nov 2012, 19:11

Can I just say to all on this thread or reading. I have not slept for more than 2 hours a night for the last 4 nights for pinched nerve reasons (I hope better now). So, if I write anything objectionable or just plain stupid can you point that out nicely and forget it - thanks.

Not deadtime.
You mentioned earlier that the software does not turn the IGBTs on and off at the same time.
Say top IGBT goes on on U, 2uS later bottom IGBT on W phase goes on. Bottom IGBT on W phase goes off, top IGBT on U phase goes off.
The net result is a drift toward +ve because top IGBTs are on longer.
This could create all sorts of interesting aliases.

Maybe not staggered on but only stagggered off - same effect.

Is this just rubbish?

User avatar
weber
Site Admin
Posts: 2626
Joined: Fri, 23 Jan 2009, 17:27
Real Name: Dave Keenan
Location: Brisbane
Contact:

My homebuilt VFD progress

Post by weber » Fri, 09 Nov 2012, 19:26

Wow! This thread's really degenerating. Image



OK. Now I'm thinking the 20 V is being dropped across stray spoons, sorry, stray inductance. The spoon may or may not be real, in the sense that it may only be in the loop created by the DSO probe connections. Try to make that loop have as small an area as possible.

If the stray spoon is in the actual high-current path then you could try looking for the 20 volts between E2 and DC-bus-negative and between C1 and DC-bus positive.
One of the fathers of MeXy the electric MX-5, along with Coulomb and Newton (Jeff Owen).

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Fri, 09 Nov 2012, 19:32

lol.

20V across stray spoon inductance seems a bit excessive. The probe resistance should massive. Are they low intrusive probes?
Rgds,
Stiive

User avatar
weber
Site Admin
Posts: 2626
Joined: Fri, 23 Jan 2009, 17:27
Real Name: Dave Keenan
Location: Brisbane
Contact:

My homebuilt VFD progress

Post by weber » Fri, 09 Nov 2012, 19:35

BigMouse, re Johny's suggestion (sorry to hear of your pain, Johny) if it's easy to change the deadtime, you could maybe halve it and see what effect that has on the mystery 20 V.
One of the fathers of MeXy the electric MX-5, along with Coulomb and Newton (Jeff Owen).

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 19:41

Johny wrote: Can I just say to all on this thread or reading. I have not slept for more than 2 hours a night for the last 4 nights for pinched nerve reasons (I hope better now). So, if I write anything objectionable or just plain stupid can you point that out nicely and forget it - thanks.

Not deadtime.
You mentioned earlier that the software does not turn the IGBTs on and off at the same time.
Say top IGBT goes on on U, 2uS later bottom IGBT on W phase goes on. Bottom IGBT on W phase goes off, top IGBT on U phase goes off.
The net result is a drift toward +ve because top IGBTs are on longer.
This could create all sorts of interesting aliases.

Maybe not staggered on but only stagggered off - same effect.

Is this just rubbish?


I'll have a think over this and look at my logic analyzer readings (posted earlier) again to see if I can make out what you're getting at. My brain is probably in a similar state as yours (it's also exam time at Uni), so it might take me a bit of time to digest it.

For anyone with the saleae software (a free download), you can download my gate drive capture HERE.

My scope probes are the cheap chinese ones. I doubt they're "low intrusive", but that shouldn't make a difference on the HV side, should it? Maybe I should get a HV probe with a x100 setting.

Also, I've tried a range of different PWM frequencies and the 20v seems constant regardless of which frequency I'm using. I would expect such a "spoon" to vary heavily with frequency.

I will play with the deadtime and see what happens, it is easy to do (just one register setting).

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Fri, 09 Nov 2012, 19:41

I guess to test the hardware you could do the following.

Attach 3 loads between each of the phase outputs and DC- and then pulse upper gates


Attach 3 loads between each of the phase outputs and DC+ and then pulse lower gates


This will tell you if its a problem with the current path due to the 3-phase PWM timing, or that there's something wrong with the IGBT/drivers/signal

You could test one IGBT at a time and use a motor phase to get some inductance testing in there.
Rgds,
Stiive

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 20:40

Stiive wrote: Haha funny it still uses the Saleae software.

Is Vb meant to turn off halfway through Ut and Wt on time? The current has no path in that 1uS... I would have thought it should switch at the same time as the others?
Not that I think it would cause the problems your seeing, just seems strange to me.

The overall switching seems okay for 3-ph sine wave. Cant see the modulation index getting smaller at the edges though, but that's probably cus its zoomed out a lil too far.


Digging this up from yesterday:

Image

What Stiive mentioned got me thinking. I have periods of 0% duty cycle, but at no point does any gate make it to 100% duty cycle. In fact, according to the Saleae software, the largest duty cycle I get is 95%. At Vdc of 330v, that corresponds to about 314v, or about 16v shy of the battery voltage. That's reasonably close to 20v, especially if variation caused by spoons in my probe is considered.

Also, according to Salae, my deadtime is actually 3uS. According to one paper I found online, I should have a deadtime of 0.9uS. So I'll fix that up too.

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 22:47

SORTED!

4 solid days of troubleshooting and it ended up being in the code afterall.

I increased the number of samples in the 1/4 sine lookup table from 97 to 121 and adjusted the PWM frequency so that the top of the counter%maxsin == 0 so I could get 100% duty cycle when required. I also changed the duty cycle to 1uS.

The L-L voltage output on the phases viewed on the scope when running on my 11kW motor is clean and smooth now, and of the correct amplitude (no more 20v drop).

I adjusted the motor parameters in the code and swapped it over to my monster motor. It didn't work right away, still reading 0v output even when being switched for 9vac. I think this is due to the high currents at such a low frequency (2hz) on such a low inductance motor. I changed the minimum frequency to 10Hz and had to bump the boost frequency to 20Hz before I started seeing movement. Once then motor starts spinning, it takes off quite quickly up to 50hz (I still have the controller limited to 50Hz in case of run-away).

So it seems that it's just a matter of tuning the controller for my motor at this point. I'll need to find a sweet spot for boost frequency and minimum frequency to get a smooth start with good torque. The motor phase current is upwards up 300a at low frequencies while still within the boost range. The IGBTs I have installed at the moment are rated to 400A (I burnt out two of my 3 600a ones due to how I had hooked up my scope probes. Stupid, expensive mistake), so I have software-tripped a few times on sensed current (though I have not had a desat event yet since getting the code running smoothly).

I'll be sure to update this thread as I continue to tune. This motor is going to be very challenging to tune for. 48vac is lower than I asked for and I worry it's going to cause problems. But once I get it tuned and working properly, it'll be a beast of a motor.

I think I'm going to take a brake for the rest of the evening and head out to a party. I have an exam tomorrow afternoon and I'll need to study for it in the morning, so I probably won't get to play with this again until Sunday.

Thanks again to everyone for spending the time to read my progress and share thoughts and ideas. I really appreciate it.
Last edited by BigMouse on Fri, 09 Nov 2012, 11:48, edited 1 time in total.

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Fri, 09 Nov 2012, 22:53

Congrats mate!
I always suspected it was a problem with the code - glad you worked it out.

Are you planning to implement FOC, or stay V/hz?

Can't wait to see videos. All this talk today definitely made me want to go out the garage and spin some motors, but unfortunately I have a paper due today that I still haven't finished (uh oh).


I love it how sometimes you think this forum is dead, I ask simple question and then all of a sudden people jump out from behind bushes everywhere and join in the fun. lol
Rgds,
Stiive

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 09 Nov 2012, 23:24

Stiive wrote: Congrats mate!
I always suspected it was a problem with the code - glad you worked it out.

Are you planning to implement FOC, or stay V/hz?

Can't wait to see videos. All this talk today definitely made me want to go out the garage and spin some motors, but unfortunately I have a paper due today that I still haven't finished (uh oh).


I love it how sometimes you think this forum is dead, I ask simple question and then all of a sudden people jump out from behind bushes everywhere and join in the fun. lol


Thanks for the suggestions. For the moment, I'm planning on keeping V/Hz and controlling torque by varying slip directly based on shaft speed. The main reason for this is that it's easy to teach people what's going on (conceptually) and you can then make a bunch of parameters available to them for tweaking and tuning. I imagine the same is true for SVM/FOC, and I'll probably move to that after I have a better understanding of it. I have a class on power electronics and drives next session at uni, and it should cover that.

My hardware should be capable of it. The weakest link for a more advanced control method would be the XMEGA microcontroller (32MIPS, 8bit). It could probably do it though (Atmel has an App note for running SVM on their AT90PWM3B which is 8MIPS, 8bit). All the hardware is there for quadrature decoding, phase and battery current sensing, desat protection, gate drive, capacitor charge/discharge, contactor control, temperature sensing, and a few other features. Changing to a different control method would just be a matter of programming. My control logic is on a separate PCB from my power stage so I can design a new version of that with more processing power. There's already a few things I'd like to change on the current version.

User avatar
weber
Site Admin
Posts: 2626
Joined: Fri, 23 Jan 2009, 17:27
Real Name: Dave Keenan
Location: Brisbane
Contact:

My homebuilt VFD progress

Post by weber » Fri, 09 Nov 2012, 23:28

BigMouse wrote:I increased the number of samples in the 1/4 sine lookup table from 97 to 121 and adjusted the PWM frequency so that the top of the counter%maxsin == 0 so I could get 100% duty cycle when required. I also changed the duty cycle to 1uS.

I'm glad you've fixed it, but I don't understand how having fewer samples in your sine table or not being able to achieve 100% duty cycle caused those symptoms. Can you please explain?

And I assume you mean you changed the the "dead-time" to 1 us.
One of the fathers of MeXy the electric MX-5, along with Coulomb and Newton (Jeff Owen).

User avatar
coulomb
Site Admin
Posts: 3780
Joined: Thu, 22 Jan 2009, 20:32
Real Name: Mike Van Emmerik
Location: Brisbane
Contact:

My homebuilt VFD progress

Post by coulomb » Sat, 10 Nov 2012, 02:33

coulomb wrote:
BigMouse wrote: If the probe were set to x1, then the scope would show a Vrms of 356v, which through the voltage divider would mean over 700v.
Oops, yes, wrong way around.

A bit late, but I have to defend myself. When I said I was wrong, I was confused Image If the probe was at x1 and the DSO said 35 VRMS, in reality it would have been 3.5 VRMS (or 7 V because of the voltage divider.)

You keep assuming that the figure on the DSO is right, but it depends on the probe switch and the DSO setting agreeing. I see that you have independently verified this now with the multimeter, but at the time it seemed to fit the facts (as I knew them) pretty well.

[ Edit: voltage scale has definitely been verified now ]
Last edited by coulomb on Fri, 09 Nov 2012, 15:39, edited 1 time in total.
Nissan Leaf 2012 with new battery May 2019.
5650 W solar, 2xPIP-4048MS inverters, 16 kWh battery.
1.4 kW solar with 1.2 kW Latronics inverter and FIT.
160 W solar, 2.5 kWh 24 V battery for lights.
Patching PIP-4048/5048 inverter-chargers.

User avatar
coulomb
Site Admin
Posts: 3780
Joined: Thu, 22 Jan 2009, 20:32
Real Name: Mike Van Emmerik
Location: Brisbane
Contact:

My homebuilt VFD progress

Post by coulomb » Sat, 10 Nov 2012, 03:05

weber wrote: I don't understand how having fewer samples in your sine table or not being able to achieve 100% duty cycle caused those symptoms.

Yeah, off partying while there are questions unanswered! Image

I can only imagine that there was a DC offset involved, and DC offsets can cause strange effects. But I didn't think that those effects included allowing 20 V across an IGBT, and said IGBT staying cool. In my house, we obey the laws of physics, and you should too!
Nissan Leaf 2012 with new battery May 2019.
5650 W solar, 2xPIP-4048MS inverters, 16 kWh battery.
1.4 kW solar with 1.2 kW Latronics inverter and FIT.
160 W solar, 2.5 kWh 24 V battery for lights.
Patching PIP-4048/5048 inverter-chargers.

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Sat, 10 Nov 2012, 15:37

Sorry, I was tired and brainfried (still am). Yeah, dead-time is now 1uS. I found a paper from Infineon (AP99007) about how to calculate deadtime. The effects of too much deadtime that they listed in the article seemed to match at least some of what I was observing.

More samples in the sine table (I made it 25% larger) allows for a "smoother" (better quantization) waveform. There is scaling for V/Hz, but no interpolation happening. The xmega microcontroller has no shortage of memory, so I'm even considering expanding the sine table further and using ints instead of bytes for better resolution and reducing the calculations required in scaling the values.

Also, yes, I expect the uneven PWM was causing a DC offset, as coulomb mentioned. As adjacent IGBTs turned on/off at 60 and 240 degress, they "pulled" the DC offset one way or another, which could explain the distorted waveform. The reason this wasn't visible with no load is that there was no connection between the phases so no current path for an adjacent phase to "pull" the voltage around. (I'm just guessing here).

As for the 20v drop across the IGBT, perhaps it was inductance in my scope probe? That is a 330v swing in less than a uS, afterall. I haven't checked again to verify if that drop is still visible on the scope trace now. I should. But I have an exam this afternoon and I need to get some study in, so it'll have to wait.
Last edited by BigMouse on Sat, 10 Nov 2012, 04:41, edited 1 time in total.

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Sat, 10 Nov 2012, 15:39

BigMouse wrote: Sorry, I was tired and brainfried (still am). Yeah, dead-time is now 1uS. I found a paper from Infineon (AP99007) about how to calculate deadtime. The effects of too much deadtime that they listed in the article seemed to match at least some of what I was observing.

Also, yes, I expect the uneven PWM was causing a DC offset, as coulomb mentioned. As adjacent IGBTs turned on/off at 60 and 240 degress, they "pulled" the DC offset one way or another, which could explain the distorted waveform. The reason this wasn't visible with no load is that there was no connection between the phases so no current path for an adjacent phase to "pull" the voltage around. (I'm just guessing here).

As for the 20v drop across the IGBT, perhaps it was inductance in my scope probe? That is a 330v swing in less than a uS, afterall. I haven't checked again to verify if that drop is still visible on the scope trace now. I should. But I have an exam this afternoon and I need to get some study in, so it'll have to wait.


Yeh provide some pics now its all working.
Id be interested to see the logic gate drive outputs now
Rgds,
Stiive

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Sat, 10 Nov 2012, 15:44

Stiive wrote:
BigMouse wrote: .... a bit more on the sine table, see above


Yeh provide some pics now its all working.
Id be interested to see the logic gate drive outputs now


Pics will come. Download the logic outputs HERE. You can see the 3rd harmonic injection now. It wasn't even visible before.

Stiive
Groupie
Posts: 295
Joined: Wed, 31 Dec 2008, 08:26
Location: Melbourne

My homebuilt VFD progress

Post by Stiive » Sat, 10 Nov 2012, 19:24

BigMouse wrote:
Pics will come. Download the logic outputs HERE. You can see the 3rd harmonic injection now. It wasn't even visible before.
Looks basically the same to me apart from the harmonic.
Seems it was the deadtime causing your problems.
Rgds,
Stiive

User avatar
BigMouse
Senior Member
Posts: 600
Joined: Thu, 28 Oct 2010, 02:39
Real Name: Vincent Tannahill
Location: Silicon Valley
Contact:

My homebuilt VFD progress

Post by BigMouse » Fri, 16 Nov 2012, 21:32

Okay, so now that this controller is running, I'm basically to the same point I was at with the previous version of the controller. I have the big motor running on the battery pack, but just like with the old version (different gate drive, different algorithm, same V/Hz), I get a "pulsing" or "surging" of the motor speed. It only does this on the big 48vac motor. The 11kw 240vac motor doesn't do this.

I've verified that the phase voltage is oscillating with the same frequency as the motor pulsation (2-5Hz, depending on the running frequency). Whether this is causing the pulsation, or due to the pulsation, I can't tell. The DC bus voltage varies less than +/- 5v when this is happening, and since the bus voltage is much higher (330v) than the phase voltage (20v or so at 30Hz), I doubt the DC bus variation is the cause.

Like I said, the motor did the exact same thing on my previous controller. I haven't take it above 50Hz on either controller due to this.

My theory is that the motor is reaching synchronous speed (verified by my shaft encoder) briefly, then oscillating about that point due to the lack of a load.

However, on the previous controller, I connected my 11kW motor to the "big" motor and applied DC to the windings to act as a load. This had no noticeable effect on the oscillation period or amplitude. The fact that the same thing is happening on this new version of the controller makes me wonder if it's more to do with the motor than the controller. Unfortunately, I don't have a commercial VFD capable of running it to rule out the controller. I'm told the motor was tested on a 3-phase variac at 50Hz after the rewind, but I don't know if the oscillation happened then or not. From memory, I think I was told the phase current was 50a rms at 48v 50Hz, but my controller is tripping on these surges as the phase peak current is exceeding 450a (the trip level I've set for my 400a IGBT modules). I've verified that the current waveforms from the hall sensors is clean and indeed approaching the limits, so it's not noise on the phase current analog signals.

I've implemented some code which reduces the phase voltage as slip approaches zero, and this smooths it out a lot (probably improves efficiency too), but it doesn't seem like it should be necessary.

Really, I'd like to figure out a good way to load the motor for testing. I'm not sure if it would be easier to build a dyno, or just put it in a car.

Any thoughts?

User avatar
Johny
Senior Member
Posts: 3729
Joined: Mon, 23 Jun 2008, 16:26
Real Name: John Wright
Location: Melbourne
Contact:

My homebuilt VFD progress

Post by Johny » Fri, 16 Nov 2012, 21:52

This may not be the same reason but I saw a similar effect when I originally ran my 132 frame motor from a marginal supply and using 1.5mm2 wire (undersized). Once I got it into the car with correct cabling and battery supply the problem "went away".
See this post.
viewtopic.php?title=ac-motor-test-run&p ... 360#p16023

Post Reply