Jump to content

Problem with motor fader from Penny & Giles


JR
 Share

Recommended Posts

Hi,

I have bought some old motor faders from Penny & Giles (PGF 6100) and can't get them to work with Midibox...

I have built one core (without display) and one MF module, connected them together and programmed MIOS and the mf_example1 application to test one of the faders.

When I move the fader by hand I get volume change messages in the range 0x00..0x7e. I think it's simple to change the program that it scales correspondingly to reach the highest possible value of 0x7f.

But my real problem is to control the motor. If the distance between the current position of the fader and the destination position is high (in example it stayes at position 0 and I send a volume control of 0x70) then the fader moves smooth and fast to the expected position. But if the distance is small the motor only makes strange knocking noises and moves very unpredictably.

I have already played with some values for MIOS_AIN_DeadbandSet, MIOS_MF_DeadbandSet, MIOS_MF_CaliUpSet, MIOS_MF_CaliDownSet and even MIOS_MF_StartupSpeedSet. Then I tried some different voltages for the MF module (according to data sheet it should be 12V). The bahaviour of the motor changed but I can't get it to react correctly.

I'm afraid that there must something be changed in MIOS itself to get this faders to work. As I'm not very good in programming assembler, I need some help in this task (where to start, what can I try,...).

Another thing I want to mention is the following: During my first steps with Midibox I sent a volume change to the PIC. As the fader didn't move (the distance was too small as I know yet) I rechecked my sent command and the power supply of the MF module and...  After some time I noticed a horrible odor. At once I checked the temperature of all the IC's and found out that the TC4427 was very (and I mean very!) hot. I turned off the power supply. And I had lunk, the IC still works...

I think the problem was that MIOS tried some minutes to move the fader to the correct position but the fader didn't move because the current through the motor was too less.

Perhaps MIOS could be extended so that it gives up if the fader didn't react to the control signal in between a second or two.

Thanks,

JR

Link to comment
Share on other sites

When I move the fader by hand I get volume change messages in the range 0x00..0x7e. I think it's simple to change the program that it scales correspondingly to reach the highest possible value of 0x7f

You have to calibrate the MFs... see LC tutorial

But if the distance is small the motor only makes strange knocking noises and moves very unpredictably.

What kind of PSU are you using? I read some postings of people having trouble with switching supplies. The problems were fixed, when they used a regulated one.

Greets, Roger

Link to comment
Share on other sites

Hi and thanks for the fast response.

You have to calibrate the MFs... see LC tutorial

What are you refering to? Do you mean this one? http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=misc;action=display;num=1061917936

As I have no display and no buttons (no DIN) yet I can't use neither the program mf_calibration nor midibox_lc. But I think that this programs can't do anything that I couln't do manually (change the code of mf_example1, recompile, program the pic and retry). Or is there something that finds the right values automatically?

What kind of PSU are you using

It's a regulated one (labor power supply). I've tried one fixed voltage output at 12V (3A) and a other adjustable one (3..25V at 1,5A). Both of them should work.

Thanks

JR

Link to comment
Share on other sites

Hi JR,

there is already a timeout mechanism in the MF driver which ensures that the move event will be skipped if the fader didn't move within ca. one mS. So, this cannot be the reason (FYI: the driver is located in mios_mf.inc)

First suggestion: connect a LCD, it gives you a lot of important debug informations!

Second suggestion: upload the Jitter test and determine the jitter on your fader. It should be less than 3

Third suggestion: the AIN deadband *must* be less than the MF deadband. The AIN deadband should be >= the jitter. So, 3 is normaly a save choice for AIN and MF deadband.

I can propably give you more input once you reported the new observations.

Best Regards, Thorsten.

Link to comment
Share on other sites

Hi Thorsten,

there is already a timeout mechanism in the MF driver

I wonder what else could it be since this IC now works without heating up (I haven't change anything since then).

First suggestion: connect a LCD, it gives you a lot of important debug informations!

OK, I will buy one. But that can take some time...

upload the Jitter test

Ah, a very good idea. I didn't know about that.

the AIN deadband *must* be less than the MF deadband

Yes, that was clear to me (saw it in the source code).

Thank you very much for your tips. I will try them out and report the results.

Another thing I found out in the mean time: If I change the supply voltage of the MF board to 15V and reduce the values for CaliUpSet/CaliDownSet then the fader moves much quiter. Could it really be that I have to use such a high voltage? Perhaps the motor doesn't work very well with PWM. Are such cases known?

One question: is it right that midibox shouldn't send any volume change during or after a motorized fader move until I move it manually? This could be an indicator if the fader moves smooth enough.

Greets

JR

Link to comment
Share on other sites

Hi JR,

I wonder what else could it be since this IC now works without heating up (I haven't change anything since then).

hard to say, I don't know this effect from my own hardware

Another thing I found out in the mean time: If I change the supply voltage of the MF board to 15V and reduce the values for CaliUpSet/CaliDownSet then the fader moves much quiter. Could it really be that I have to use such a high voltage? Perhaps the motor doesn't work very well with PWM. Are such cases known?

Problem is that I only had the chance to try Alps and Panasonic faders with my driver. I'm no "motorfader expert", and I don't know how the drivers of commercial devices are working. Therefore I cannot tell you if my implementation is qualified for each motorized fader/pot available on the market... however, if you are not able to get it running, you are free to send me the fader so that I can try to make adaptions (if required...)

One question: is it right that midibox shouldn't send any volume change during or after a motorized fader move until I move it manually? This could be an indicator if the fader moves smooth enough.

yes, thats a good indicator.

Maybe it's worth a try to change the MIOS_MF_GetSpeed table in mios_mf.inc - it varies the PWM pulsewidth depending on the distance between current and target position.

Best Regards, Thorsten.

Link to comment
Share on other sites

  • 1 month later...

Hi Thorsten,

now I've found the time to connect a display  :)

The jitter value varies between 0 and 2, depending on the fader position.

But this information didn't help me to get the fader running correctly. I still have the same problems.

What about the speed table you mentioned:

Maybe it's worth a try to change the MIOS_MF_GetSpeed table in mios_mf.inc - it varies the PWM pulsewidth depending on the distance between current and target position.

My foundings are: The table has 31 entries. Every entry can have a value between 0x00 and 0x1f. This is the pulse width which will be sent to the motor. But I don't see for what the 31 entries are. Which of them I have to change and what role playes the CaliUpSet/CaliDownSet in relation to this table?

Another idea: where can I adjust the PWM frequency? Perhaps it is to slow or to fast for the motor.

Thanks

JR

Link to comment
Share on other sites

One question: is it right that midibox shouldn't send any volume change during or after a motorized fader move until I move it manually? This could be an indicator if the fader moves smooth enough.

I could never get my panasonics to move smooth enough to avoid this. But... this thread solved all my problems nontheless... http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=troubleshooting;action=display;num=1094463330

(when used with touch mode 2)

the hot 4427 is a bit of a worry. The design of the P+G faders must be a bit inefficient.

Link to comment
Share on other sites

Hi JR,

a jitter of about 2 sounds very good!

What about the speed table you mentioned:

My foundings are: The table has 31 entries. Every entry can have a value between 0x00 and 0x1f. This is the pulse width which will be sent to the motor. But I don't see for what the 31 entries are. Which of them I have to change and what role playes the CaliUpSet/CaliDownSet in relation to this table?

The handler picks a value from this table depending on the distance between current and target position and adds this to the calibration value (values > 0x1f will be saturated).

Here some pseudo code (hope that it is correct):

distance is a 10-bit value

  distance = abs(current_position-target_position)

  speed = table[distance >> 4]

   speed += upward_move ? cali_up_value : cali_down_value;

  if( speed > 0x1f ) speed = 0x1f

Another idea: where can I adjust the PWM frequency? Perhaps it is to slow or to fast for the motor.

Thats difficult, because the PWM is generated from the timer0 interrupt which also handles the AD conversions. If you make this interrupt faster, the conversion results will be too bad (higher jitter). If you make this interrupt slower, the faders will be scanned less times and therefore cannot be positioned correctly anymore

However, you could try to increase/decrease the preload value for TMR0L in mios_isr.inc::IRQ_Timer0

Once I've received the P&G fader from Roman I can possibly help you.

Best Regards, Thorsten.

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.

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...