Highly Liquid Forum facebook twitter google plus rss feed
  #1  
Old 01-10-2013, 05:21 PM
Kimmo Kimmo is offline
Junior Member
 
Join Date: Jan 2013
Posts: 4
Default Here' a tricky one!

Hello everyone!
I am obsessed by an idea of building a Pedal Steel Guitar (later shortened as PSG) with pedals that control the motors attached to strings (10) to bend them as they do in mechanical versions. John already helped me some, but he did't have all the answers. There are many things concerning this I have too little or none knowledge of.

So, I try to explain my problems now:

I'd like to build a versatile PSG with MD24 and Midi CPU controlling motors which are attached to levers that raise and lower the strings. In a PSG each string may raise or fall one or two semitones (+one string 3 semitones down), and each pedal (in my case there would be 9-11 pedals) may control one or more strings. So each string may have 5 different positions, -2,-1,0,+1,+2 halfsteps depending on the tuning system, and one pedal could, say, lower one string -2, raise another +1 etc, then another pedal could raise or lower the same strings, but different amounts. The actual change of length of a string is only 1 or 2 millimeters and with a lever the needed travel on the other end , say 15mm. The tension of a string is 8-15kg (for you on the new continent with the ancient units it is about 17-33lbs) and max needed force if using a 1:10 lever for string, about 16N ((1Newton=8.85 lb-in)

* How can I make a stepping motor (which is a part of a linear actuator) communicate with MD24? Firgelli has small linear actuators that read PWM, but they are too slow (10mm/s) Anyone seen faster (maybe 50mm/s) but powerful actuators. Small servos don't have power enough. Other solutions?
I guess solenoids are out of question, because the nature of the problem.

* Could I control the speed of the motor with a potentiometer attached to a pedal adjusting the working voltage or current ?

* Even more complicated problem is the use of two or more pedals at the same time. For example pdl 5 would raise strings 3 and 4 a wholetone, but then a knee pedal wants to drop str 3 a halftone. How would a motor react to contradicting information?

* Does anyone have experience with motors near (100mm) strings and microphone (500mm). Will the magnetic field or the motors cause noise?

* I also wonder if the PSG could have a semiautomatic tuning system? If a string was plucked, a sensor (piezo?) would tell the system what the note is and the system would tell the motor to adjust it towards the desired one. But I guess this is almost rocket science. Opinions?

* Would I need a special software for this, or could I do this with MD24 and Midi CPU only?

* Any other solutions ? (like pneumatic

I hope someone has time to think about this and help me, even in some part, I'd appreciate it, and give me a solution which is't: for god's sake, give up.

Kimmo
Finland Europe
Reply With Quote
  #2  
Old 01-10-2013, 08:18 PM
Jeff Jeff is offline
Member
 
Join Date: Jun 2010
Posts: 53
Default

Quote:
Originally Posted by Kimmo View Post
I'd like to build a versatile PSG with MD24 and Midi CPU controlling motors which are attached to levers that raise and lower the strings. In a PSG each string may raise or fall one or two semitones (+one string 3 semitones down), and each pedal (in my case there would be 9-11 pedals) may control one or more strings. So each string may have 5 different positions, -2,-1,0,+1,+2 halfsteps depending on the tuning system, and one pedal could, say, lower one string -2, raise another +1 etc, then another pedal could raise or lower the same strings, but different amounts. The actual change of length of a string is only 1 or 2 millimeters and with a lever the needed travel on the other end , say 15mm. The tension of a string is 8-15kg (for you on the new continent with the ancient units it is about 17-33lbs) and max needed force if using a 1:10 lever for string, about 16N ((1Newton=8.85 lb-in)

* Even more complicated problem is the use of two or more pedals at the same time. For example pdl 5 would raise strings 3 and 4 a wholetone, but then a knee pedal wants to drop str 3 a halftone. How would a motor react to contradicting information?

* I also wonder if the PSG could have a semiautomatic tuning system? If a string was plucked, a sensor (piezo?) would tell the system what the note is and the system would tell the motor to adjust it towards the desired one. But I guess this is almost rocket science. Opinions?

* Would I need a special software for this, or could I do this with MD24 and Midi CPU only?

Kimmo
Finland Europe
Hi Kimmo, what you have described is a task commonly understood in the engineering community as a "state machine".

Combinations of output actions may occur, depending on the input conditions.
Unless John can advise otherwise, the tasks you have described are beyond the capabilities of the CPU and MD24 decoder.
A program could be written for the Arduino platform that handled combinatorial tasks like you've described, and used to control a small fleet of servos. And I believe there's even a MIDI Arduino shield available from various hardware vendors to accommodate the input side of things.
The big hurdle is the programming. If you're not familiar with high level programming languages, or the Arduino itself, this isn't going to help you.
There are programmers for hire on the 'net. You would need to define the project tasks very carefully beforehand to avoid any disasters.
With regard to actuators, the string tensioning/tuning task is best handled with a servo. Resolution is fine, and it could also accommodate very precise tuning. You might also investigate using Nitinol wire in place of servos for string tension control. This is an alloy wire that shrinks or expands depending on current passing through the wire (heat/cool). It's also silent.
A PD servo loop to maintain tuning could be very precise. The caveat is that Nitinol's response is slow in comparison to a servo, since it's expansion/contraction properties occur through the heating/cooling cycle.

Hopefully I've given you some things to consider. It sound like a wonderful project idea.

Regards, Jeff
Reply With Quote
  #3  
Old 01-11-2013, 10:21 AM
Kimmo Kimmo is offline
Junior Member
 
Join Date: Jan 2013
Posts: 4
Default

Thanks, Jeff, for responding so swiftly.

It helps me to perceive this not-so-simple task.
I feel that your angle to the problem is the one I must take as a guiding light (?), towards Arduino and servos, and finding a programmer.
The internet is full of all kinds of free programs, maybe I could find a ready-made program for some task similar, and make only small adjustment, or what do you think?
The powerful and fast servos seem pretty expensive, but if I only could read and write chinese, that problem also could be solved
Nitinol is interesting, but I think cooling takes too much time.
I've been reading a simple book about Arduino and embedded systems and there is a community here around it. Maybe I could contact them.

Regards Kimmo
Reply With Quote
  #4  
Old 01-11-2013, 03:51 PM
Jeff Jeff is offline
Member
 
Join Date: Jun 2010
Posts: 53
Default

Hi Kimmo, I'd given some thought to the mechanics of your project.

Please understand that I'm not familiar with the instrument, or the means of playing it. So with that in mind, here's what I have:

Assuming you will be taking the servo approach to string tension control. You would retain the worm drive string tuning mechanism, with a 180 degree travel servo attached to what is usually a thumb shaft. The limit of the servo shaft rotation would then dictate the diameter of the post the string is wound around. A post diameter of 10mm would theoretically provide a 2mm length change with a 180 degree thumb shaft rotation. (My quick mental calculation translates this to ~22 degrees of string post rotation, looking at my daughter's guitar).

The frequency of note change and tuning can be determined using a magnetic pickup, the same type used for a steel string guitar. The note frequency of all strings would be maintained in global memory registers, say between 0-255h. A frequency to voltage conversion would work nicely in this task. The output would vary between ~1-5v, divisible to 255 points.

When it comes time to tune, the string is plucked, and a program subroutine is executed to compare the actual note frequency against the pickup value, and the servo enters a PLL (Phase Locked Loop) compare to effect a change of the servo shaft position until the two values are matched to within a threshold you define.

Since you also require string tension control to vary the note scale, you will build a data table for the servo to draw from. That way the servo can move a predetermined distance to effect the note you want, without having to use a slow PLL routine with each scale change. This can also benefit the tuning cycle, since the pickup knows the difference from note frequency to the memory stored (perfect) value, and can shuttle the servo to position; dramatically reducing the process time for tuning.

There are bits and pieces of Arduino apps that can be put together for some of this. Other parts will need to be written specifically. Two that come to mind are the chording, and pedaling, where combinatorial tasks are needed.

High torque servos can be expensive. You might find that "Giant scale" metal gear hobby RC servos will deliver enough torque and repeatability for this task. Sorry, I have no recommendations for you on these particular servos.

I have a little recent experience using a servo to control an instrument pedal, and tried using a lower cost Chinese made servo that was designed for robot applications. It turned out that it failed to meet it's advertized torque claims, and required some modifications to make it work. If I had to do it again, I would have chosen this servo for the task.
Unfortunately it is also very expensive.

Regards, Jeff

Last edited by Jeff; 01-11-2013 at 03:51 PM. Reason: typo
Reply With Quote
  #5  
Old 01-12-2013, 01:15 PM
Kimmo Kimmo is offline
Junior Member
 
Join Date: Jan 2013
Posts: 4
Default

Hi Jeff.
Thanks for giving thoughts for my project.
My english is't too good (specially technical) but I'll read your answer later and try to understand what you are exactly saying...
I made a quick drawing of the PSG (an attachment with this post) so that you would get a picture how I figured how the bending system might be arranged and you'll understand why I'm interested in linear actuators. There would not be normal machine heads like on normal guitars and the movement would be linear, not revolving. Less friction and more simple to build.

I'm not sure if I understood right what you said about the string tension control, but just to make sure: The tuning mode would be one thing, but when playing, there can't be any feedback going on, because on a PSG, the notes are chosen by sliding a piece of metal on the strings and the player chooses the notes and does the tuning with his/her left hand. The servos do their job in their predetermined way controlled by the pedals.

The Polulu link you gave me seemed very good-
I'll get back later with more time
Kimmo
Attached Images
File Type: pdf Psg.pdf (46.6 KB, 190 views)
Reply With Quote
  #6  
Old 01-14-2013, 03:41 PM
Jeff Jeff is offline
Member
 
Join Date: Jun 2010
Posts: 53
Default

Quote:
Originally Posted by Kimmo View Post
Hi Jeff.
Thanks for giving thoughts for my project.
My english is't too good (specially technical) but I'll read your answer later and try to understand what you are exactly saying...
I made a quick drawing of the PSG (an attachment with this post) so that you would get a picture how I figured how the bending system might be arranged and you'll understand why I'm interested in linear actuators. There would not be normal machine heads like on normal guitars and the movement would be linear, not revolving. Less friction and more simple to build.
Ahhh, now I understand. Thanks for the example image.

From the appearance, you could vary the tension of all strings combined or individually.
The space beneath could accommodate multiple lead screw servos, staggered, with varying length linking rods to the hinged levers.
The only problem I see is that conventional servos do not hold their position when not driven, if a link rod to the lever is attached directly to the servo horn. This could be accomplished by using a linear actuator.
There is a linear actuator modification available for the Futaba S148 series servos. These are low cost, and provide adequate torque for leverage needed for your task.

You will need both a servo, and the linear actuator modification for it.

Hopefully this is what you were imagining.

Regards, Jeff
Reply With Quote
  #7  
Old 01-16-2013, 09:34 AM
Kimmo Kimmo is offline
Junior Member
 
Join Date: Jan 2013
Posts: 4
Default

Hi Jeff.

I've already made my decisions... I ordered an Arduino Mega 2560 and Firgelli L16 linear actuators with a card to get them work with PMW. They are fast and powerful enough and they hold their position when not driven. Their accuracy is 0.3 mm and (with 1:10 lever means 0.03mm) I really hope it is enough because 10 of them (with tax and customs and postage) will cost me about 1000. Well, when one is obsessed , what can you do! On the other hand stepping motors with a linear system would cost at least three times this. I'm still trying to find a system with 10 mics (one for every string) and a shield that would convert the information in a form that Arduino would understand. In Arduino 2560 there are 16 analog inputs and 9 of them will be used by my pedals but there are lots of I/O connections to use.
I have another project (a musical one ) going on, but as soon as I get it ready it is time to learn programming and building the instrument and I'm sure I have lots of questions in the future. But thank you, this has been helpful.
Kimmo
Reply With Quote
  #8  
Old 01-16-2013, 01:14 PM
Jeff Jeff is offline
Member
 
Join Date: Jun 2010
Posts: 53
Default

Hi Kimmo, great to know you are moving ahead.
Your choice to use the Firgelli L16 (with I assume the highest torque gearing) will provide the resolution you need. Their servo amplifiers are very good quality as well.

On the string pickup, you could use either a single string pickup, or a standard combined pickup. It all depends on what you do to differentiate and identify which string is plucked. If your budget allows, you could have a custom ten-string, ten-output wound by this company. Scroll down for details on them.

Have fun. You have a very interesting instrument project underway.

Regards, Jeff
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 05:37 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.