Trouble Using Minimaestro 12 To Control Stand- Alone one 6 DOF Robot Kit Without Connection to USB

Dear Sirs:
We are new to the handling of this Mini maestro 12 platform; And need to build a 6 DOF Robot Demo Built and controlled with your well named servo control card but that works Stand- Alone
( Without any USB Connection to a PC ) but on condition that when someone press a Pb Switch it Triggers the Programed Sequence in the Robot Developing it´s task.
We carefully followed the instructions in your video and were able to get our robot to perform the sequence we needed without any problem; but only as long as your card is connected to the USB port, (We attach Figs. That verify initial normal operation) in wich:
Fig. 1 Shows Circuit and Robot Connected to Mini Maestro 12 Where In addition to carrying out the sequence without any problem, the status of the LEDs were:
1.- Green Led On
2.- Orange LED Blinking
3.- Red LEE Off
Fig. 2 Shows Chanel Settings Menu in Normal operation
Figs. 3-5 Shows Full Sequence Script
Fig. 6 Shows Serial Settings Menu View In Normal Operation
So as we told you lines above when we tried to follow the process so that Your Mini Maestro 12 card would operate autonomously from the PC (We Mean, it would operate without a USB connection to a PC), following the steps described in your Corporate Video
In Menu Sequence
A).- Copy All Sequences To Script In Script Menu
B).- Mark Run Script On Startup
C).- Click On Apply Settings Disconnect USB and Connect Blue Jumper so that VSRV=VIN
This is when the problems began, since in addition to appearing 2 error codes shown in Figs. 7 and 8, (Error Codes 0x0080 and Connection To Maestro #00197868 Lost) shown in such Figs. The Red LED were ON and We also completely lost control over the Robot, for this we would appreciate it
1).- Could you help us to solve this problem, so that the robot and its Mini Maestro 12 Card operate autonomously (without USB connection to the PC) and also
2).- How could we include a Switch ( Pb ) referred earlier to Trigger the sequence already programmed in the robot?, but considering that its Mini Maestro 12 card were not connected via USB to the PC
Fig. 1.pdf (250.3 KB)
Fig. 2.pdf (259.5 KB)
Fig. 3.pdf (259.0 KB)
Fig. 4.pdf (255.1 KB)
Fig. 5.pdf (255.1 KB)
Fig. 6.pdf (250.6 KB)
Fig. 7.pdf (258.6 KB)
Fig. 8.pdf (261.0 KB)

Hello.

From your pictures, it doesn’t look like you have a button connected yet, so that’s a good place to start. To connect a button, you will need to choose one of your free Maestro channels and configure it as an input in the “Channel Settings” tab of the Maestro Control Center. After that, you can connect the button to the chosen Maestro channel with a pull-up resistor, as shown in the “Attaching Servos and Peripherals” section of the Maestro user’s guide. If you have it connected and configured appropriately, you can test it by monitoring the “Status” tab and making sure the indicator for that slider is to the right (high) and moves to the left (low) when the button is pressed.

Once the slider is responding to the button as expected, you will need to add some code to the start of your script that tells the Maestro to run the pre-sequenced subroutine if the button is pressed. You can find something similar in the “Using multiple buttons or switches to control servos” example found in the “Example Scripts” section of the guide. Since you only have one sequence right now, it would look something like this:

begin				#start loop
  6 get_position 500 less_than if  	#check if the button on channel 6 is pressed 
    Demo_1 			#if it is, run your Demo_1 subroutine
  endif
repeat				#repeat script

Please note that my code above expects the button to be on channel 6; if you use a different channel you can change the number before the get_position command.

Brandon

Dear Brandon:
Thank you very much for your valuable advice.
We have just implemented the switch according to what you recommended, using the information “Attaching Servos and Peripherals” and it was enabled using a 10 K ohm Resistor as shown in Fig. 9
where Green LED was ON; Orange LED was blinking; Red LED OFF;
The Push Button was activated, marking it as “Input” in the channel 6 box of Channel Settings, and we proceeded to test it.
In Fig. 10 Shows Status of the P.B. without pressing it
On the other hand, Fig. 11 shows the status of the P.B. when this is pressed.; making sure the indicator for that slider is to the right (high) and moves to the left (low) when the button is pressed; responding to the button as expected and at the end we gave click on Apply Settings.
At this moment we feel a bit confused how to insert the example script that you so kindly sent us in our general script, we thank you in advance for your enormous patience with us and we ask you again please if you could guide us in How to load this script in our Mini Maestro 12 card and achieved this, to be able to make the card work autonomously without a USB connection
Thanks again for your valuable cooperation.
sincerely
A. Paredes Itto
sentinel1
Fig. 9.pdf (653.3 KB)
Fig. 10.pdf (276.6 KB)
Fig. 11.pdf (273.9 KB)

Hello.

It looks like your button is working as expected, so you should be good there.

For the script, you should be able to copy and paste the code I posted above to the top of your script in the “Script” tab of the Maestro Control Center (i.e. above ### Sequence subroutines: ###). Then, to make it run without the USB connection, make sure you check the “Run script at startup” box, then click the “Apply Settings” button. After that, the script should run automatically whenever the Maestro’s processor is powered.

Please note that the Maestro’s processor is powered through either the USB or the VIN pin. If you want to power the Maestro from your servo power supply, you can install the “VSRV=VIN jumper”


You can find more information about this in the “Powering the Maestro” section of the Maestro user’s guide.

Brandon

Dear Brandon:
We follow the instructions that you indicated we will carry out, the Script was registered before ### Sequence subroutines: ### , the “Run script at startup” box checked, then click the “Apply Settings” , leaving the script as the one shown in Fig. 12 Upper Part; So we proceeded to test the P.B. and as also shown in Fig. 13, Keeping the Mini Maestro 12 still connected to the PC Via USB Where:
Green LED was ON
LED Orange Flashing
Red LED OFF
By pressing the P.B. Fig. 14 keeping the Blue Jumper Uninstalled and connecting the USB cable to the PC, to test the new script we could activate the programmed sequence as you suggested. ¡ Worked Fine Untill this stage; Thank You !
Unfortunately, as you can see in Fig. 12 Lower Part and Fig. 15, when Installing the Blue Jumper so that VSRV= VIN and disconnecting the USB cable from the PC side, the Red LED turned ON, the code shown appeared again. Fig. 12 Lower Part “Connection to Maestro #00197868 Lost” stopping the Robot from working and not responding when the P.B. was pressed to start the sequence.
Once again, we would like to thank you in advance for your patience with us and we would appreciate it if you could tell us what would need to be done so that the Robot and the Mini maestro 12 Card could work autonomously without connecting to the PC via USB, which is how our client requires it by activating the sequence just by one button.
Expecting your promptly reply and Thanking you for your valuable cooperation
Best Regards
Andrés Paredes Itto
Sentinel1
Fig. 12.pdf (319.0 KB)
Fig. 13.pdf (248.4 KB)
Fig. 14.pdf (258.9 KB)
Fig. 15.pdf (263.7 KB)

To clarify, the Maestro Control Center requires the USB connection between the Maestro and the PC, so seeing that “connection lost” warning when you remove the USB is normal.

It sounds like you are getting an error (indicated by the red LED) when the Maestro is powered separately from the USB. Could you post more details about how you are powering the Maestro (i.e. what power supply and what voltage)? Also, could you post a copy of your Maestro settings file? You can save a copy of your settings file from the “File” drop-down menu of the Maestro Control Center while the controller is connected.

Brandon

Dear Brandon:
Thanks for your prompt response; Regarding the power supply, the only one we use is an ATX 5VDC /2 Amps 500 watts type, but this is used to power the Servos.
As you can see in Fig. 16 a and b; First where no-load voltage readings are included Fig. 16a and second at full load in Fig. 16b; and as you probably already deduced at this point, I just realized that I haven´t powered the Mini Maestro 12 externally, since the power to it was via the USB cable connected to the PC and when disconnecting it, the Mini Maestro 12 no longer had power, therefore seeing your technical information I observed that the Micromaestro 6 could be fed with an external source of 5-16 VDC at 30 mAmps, while another source was connected to the servos Fig. 17a; for this reason I was wondering if it was okay for you to try to externally power the Mini Maestro 12 with an external source of 5VDC/ 50 mAmps., connecting it as shown in Fig.17b, and if you think this would work for the Mini Maestro 12 module and the Robot would work Autonomously both considering disconnecting the USB cable and pressing the P.B.? Note: I am attaching also the Maestro_settings file, which is the one you requested to be sent to you.

Thanking you again for your enormous patience and waiting for your valuable suggestion.
Receive greetings
Sincerely Andres Paredes Itto
Fig.16.pdf (374.1 KB)
Fig.17.pdf (417.7 KB)
sentinel1

Sorry Brandon; i Forgot to include the Maestro-settings file ther it goes…
maestro_settings.txt (4.2 KB)

Installing the jumper as I described in my post above should connect the servo power rail to the Maestro’s VIN pin so you can power the whole system from a single supply. So, you should not connect a second supply to the VIN pin if that jumper is in place. If you want to power the Maestro from a separate 5-16V supply, then you can remove the jumper and connect it as shown in your figure 17b diagram. The Mini Maestro requires around 50mA; I would generally recommend choosing a power supply with some margin of safety (e.g. one that can handle at least 80-100mA).

Brandon

Dear Brandon:
Your idea worked; The robot is now capable of working autonomously performing its preloaded sequence without the need to have the USB connected to the PC and just in time because on Wednesday the 14th it has the commitment to deliver the first prototype of the order to the client and is now working under its Specifications.
Thanks for all your support and I have 1 final question left:

1).- If it is required to change the sequence in the future,

a).- I must first delete the current script, load the frames of the new sequence, click on copy all sequences and add before ### Sequence subroutines: ### the script that you sent me, Mark the Run Script on Startup box and click Apply Settings, and then Test it ? or

b).- Is there any other way to make it shorter without so much riot, so that the new instructions are overwritten over the current ones?

Again Thanks for All Your Cooperation

sincerely

Andres Paredes Itto

Sentinel1

If you change the sequence, and want to update the script, you can do the following steps:

  1. In the “Script” tab, delete everything in your current script except the code I provided.
  2. In the “Sequences” tab, click the “Copy all Sequences to Script” button.
  3. Click “Apply Settings” button.

Alternatively, you can directly edit the code in the script directly if you are familiar with the Maestro scripting language. You can find information about that in the “Maestro Scripting Language” section of the Maestro user’s guide.

Brandon

Dear Brandon:

Thanks again for your prompt response.

I congratulate you because in addition to the technical knowledge that it is seen that you dominate, you have the gift of clearly transmitting precise instructions to solve a specific problem without going into much theory and it’s a rare gift to have both skills, which incidentally to these 62 years that I have been in existence, believe me It is increasingly difficult to try to keep updated with so many new control platforms, so I reiterate how lucky Pololu is to have staff like you in the post-sale support department and of course I will follow your advice and continue using and recommending to my clients. the use of pololu products, because through what I have already observed when solving this problem with your valuable help it is clear to me the enormous difference and distance that they make to other brands such as arduino for example.

Well, that would be all for now, but if in the future we need your valuable advice, we would like to have the opportunity to be attended by you again. So Thanks a Lot and Blessings to you and your family.

Receive greetings

Your New Allied in México

Andres Paredes Itto

Sentinel1

3 Likes

Dear Brandon:
I hope you are in good health
Again us, bothering You:
As you will remember the last time I had the pleasure of speaking with you, you had given us the following instructions.
" if you change the sequence, and want to update the script, you can do the following steps: "

 In the “Script” tab, delete everything in your current script except the code I provided.
 In the “Sequences” tab, click the “Copy all Sequences to Script” button.
 Click “Apply Settings” button.

So in case of changing the sequence, the robot could still be operated, maintaining the condition that it could, if the case required it, work autonomously without connection to the Mini Maestro 12 by USB .

It was done as suggested, without deleting the code that you had sent us, remaining as shown in Fig. 1 “Script Tab”, of course checking the Run Script On Start Up box
and clicking on Apply Settings.

Before this the button operation was first tested before powering up the robot, and the problem in question is as follows; the robot when connected to the PC performed excellently, sequencing and unloading onto a Scaled Belt Conveyor attached.

When disconnecting the USB cable, as the Mini Maestro 12 was also connected to a 5VDC 800 mAmps source, it remained energized and for this reason, when the Push Button was pressed, the sequence started without problems, but reaching the end of it, after between 5 and 7 seconds the sequence started again by itself without giving another order by pressing the Push button again to start it again and again.
We thought that we had mistakenly left the “Play In a Loop” box checked in the sequence menu, but as you will see in Fig. 2 “Sequence Tab” It was not like that and we did not find the reason why the robot cannot stop once the sequence has started.

So we reconnected the USB cable to the PC and

Back to Fig. 1 “Script Tab” the “Stop Script” button was clicked and it was the only way to stop the robot, but it no longer obeyed autonomously to start the sequence by pressing the button connected to channel 6

So as you see our trouble is as the begining
Working well Connected to the PC, but with problems to work Autonomously without connection to the PC, in this case the robot cannot stop once the sequence has started
We Attached also the PDF File Draw 1that shows our conections and the state of the LEDS in Mini Maestro 12, and the file maestro_ settings for this sequence,

Hopping you can please help us to solve this situation
Expecting your promptly reply

Best Regards

Andrés Paredes Itto
Sentinel1

maestro_settings.txt (9.4 KB)
Sequence Tab.pdf (120.6 KB)
Script Tab.pdf (144.6 KB)
Draw 1.pdf (298.6 KB)

I do not see anything obviously wrong in your script or settings. I tried loading your settings onto a Maestro here and it seemed to work fine. It looks like your sequence is 19 seconds long; are you sure it is repeating? Does it always get to the same point in the sequence before it restarts?

The Maestro should generally function the same whether it is connected to USB or not. The main difference is that when it is connected to USB, the Maestro’s logic power is provided by the USB connection instead of VIN (which goes through a 5V regulator). So, I suspect you might be having a power issue. 5V is the minimum operating voltage for the Maestro. Are you powering the Maestro and servos from the same supply? If so, could you try removing the VSRV=VIN jumper and powering VIN through a separate 5-16V supply to see if that changes anything?

Brandon

Dear Brandon:
Thanks for taking our case.

Regarding your first question
Does it always reach the same point in the sequence before restarting?; The answer is Yes it does, then there is a 5-7 second pause and then, it starts the script again automatically and it does this over and over again, until the “Stop Script” button is pressed.

Regarding your second question
Are you powering the Maestro and the servos from the same power supply?
The answer is No; the Pololu Mini Maestro 12 Board is being powered from an external 5VDC 800 mAmps source through GND and VIN; as it had been commented when the tests were carried out with the other sequence, and the VSRV = VIN junmper was removed.

However, you left me wondering when you expressed that you felt that you suspected that we might be having a power supply problem.

That is why I wanted to propose to you if you allow me; if you could emulate with a Mini Maestro card 12 of the ones you have there; Loading the settings that I sent you in the Maestro_Settings and connecting to 6 Servos connected to channels 0 to 5 that simulate the Robot and in channel 6 connect the P.B. to verify if it is possible if the Failure also occurs there with you and to rule out if the problem has nothing to do with my script, given that at the moment regarding power supply problems, as I mentioned above, what you previously been recommended by an external source of 5VDC 800 mAmps through GND and VIN was fulfilled; as it had been commented when the tests were carried out with the other sequence, and the VSRV = VIN junmper was removed.
Meanwhile, if you allow me to try on this side, we will try to load a simpler sequence of 4 or 5 frames and we will verify if this error persists.

Finally, I would like to clarify the following Notes:
Our client, the owner of the series of robots that we sold, made the decision in this case to change the first robot with which we did the previous series of tests for an identical one, since in the first one he reported that the Shoulder and Elbow joints of the Servos got hotter than the others that made up the Robot and stopped operating in the Status tab of the Minimaestro 12, not allowing the cursor to be moved to the right or to the left in each case.
However, with this robot, the Servos do not heat up, and the same Pololu Mini master 12 card that it originally had is still being used, but now I don’t know if this could have influenced the failure.

In any case, I would appreciate it if you could do the Emulation that I referred above to see if it makes the error for you, while I will see here what happens with the 4 or 5 frames in the other sequence that I am going to upload here.

Thanking again for your patience with us.

awaiting for your comments
Best Regards

Andrés Paredes Itto
Sentinel1

As I mentioned, I loaded your settings file on a Maestro here and your script worked fine for me as-is.

Could you try monitoring the voltage on your button input channel when you run the Maestro without the USB connection to see if it ever reads low without pressing the button? Can you post some close-up pictures showing how you have it connected?

Brandon

Dear Brandon:
Thanks for your clarification about the script.
Of course I will send you the close-up photos of how I connected it
and tests to try to monitor the voltage on the button input channel when running the Maestro without the USB connection to see if it ever reads low without pressing the button

In what I had to do that we had established to do today, unfortunately I inform you that the tests with another sequence could not be carried out, because in the sequence tab we clicked on New Sequence, and Maestro Card assigned a default name “Sequence 1”; then 3 frames were saved in the Status tab and again returning to the Sequence tab the " Copy Sequence " button was clicked ; for which a Warning Sign appeared, indicating that the current script was going to be deleted, So We accept and the new Sequence appeared in the Script tab, but without the script that you had sent us to connect the Button, then following your previous instructions, this was copied from the file where we had it saved and copied to the beginning of the new script before the first instruction, the “Run Script On StartUp” box was checked;

And We remember that in your script that you sent us:

begin #start loop
6 get_position 500 less_than if #check if the button on channel 6 is pressed
Demo_1 #if it is, run your Demo_1 subroutine
endif
repeat #repeat script

you use the name of our sequence " Demo_1" to refer it as a subroutine to the Mini Maestro, so it was easy for us to change in the actual Sequence the name " Demo_1 for the name " for Sequence _1" given by default by the Mini Maestro the two times it appeared in the Script you sent us

but when trying to click on the “Apply Settings” button
The sign that can be seen in the attached “Script Error” file appeared, which prevented us from continuing to try another Sequence to see if it gave the same error with this one, considering that it is another sequence and another script.

It is from this that these questions arise.

1).- We assumed that in the script that you sent us the subroutine Demo_ 1 could be replaced in the new sequence and script by Sequence_1 but as you can see, the master card tells us otherwise.

2).- So Therefore, Please
, could you clarify how is the correct procedure to change to the new sequence (In this case, the Test of 3 or 4 frames) to prevent the sign shown in the attached file “Script Error” from appearing again, considering that we want it so that the button connected to channel 6 can be operated and this new sequence starts without having a connection to the Minimaster via USB.

Thanking in advance for your Cooperation expecting your coments
Best Regards
Andrés Paredes Itto
Sentinel 1

Script Error.bmp (1.8 MB)

Update. Dear Brandon:
You were right there was a small voltage on the Push Button even without pressing it, the Original Push Button was not isolated, it was changed and isolated as shown in Fig. 1, whose connections are those shown in Fig. 2 based on the information that You sent us previously to solve the problem of incorporating a button to start the sequence.

Returning to the subject, now pressing the button activates the sequence, but the Robot stops when it ends and remains stopped until the push button is pressed again, starting the sequence again.

However we notice something strange, if you look carefully at Fig. 2 you will notice that my hand is holding the push button insulated by the wires that are also insulated; However, just touching these as shown in this Fig. 2 while holding the Push Button is enough for the sequence to activate itself, but without pressing the Push Button,

So I have the Hypothesis except for your best opinion that somehow is generating a capacitive effect in which an electric field is discharged through me to the Push Button and this is causing the sequence to start without even pressing the Push Button and this was done not only in the way shown in Fig. 2 but also with a little touch to the Plastic insulated wires that serve as the connection to the Push Button.

I would like to know your opinion about this Hypothesis and to test if this anomaly can be solved, I have these ideas.

1).- Change the Normal conductors that serve as a connection to the Push Button for Shielded cables of # 20 or 22 AWG to see if the capacitance effect decreases.

2).- Implement the control card shown in Fig. 3 to activate the Robot sequences Based on the use of the Integrated Circuit (IC) EDR201A1200 = micro Relay in IC DIP presentation which, as you will see on the right of the image, is a micro Relay connected to terminals 2 and 6 (Coil) of it and activated by pressing a remote Push Button which would also allow in the future not only to activate the Robot sequence as it we have described Manually, but if a SPDT Switch is connected to the Push button input, it can be selected if this Push Button is going to initiate the sequence manually as previously mentioned or in the second position of the SPDT Switch Let us to allow the control and start of the sequence by an external controller such as a PLC for example.

Once again, we appreciate your cooperation, we look forward to your comments and if it were possible for you to guide us on how to use your script in other sequences as we requested in the previous email to avoid the message shown in the " Script Error " file appearing, it would be super.
Thanks again and I’m sorry about the shipping time but it’s the time I have available to do the tests.

Greetings

Andres Paredes Itto Sentinel 1

Fig. 1.pdf (413.7 KB)

Fig. 2.pdf (449.4 KB)

Fig. 3.pdf (277.5 KB)

Hello.

Your picture of the script error is not working for some reason, but I suspect you changed the name of your sequence in the “Sequence” tab instead of the name of the subroutine in the “Script” tab. The main consideration is that the name of the subroutine in the script matches what you call. So, using the code I posted before the name of the subroutine has to be “Demo_1”. Alternatively, you can call your subroutine something else like “Sequence _1” and just change the code to match, like this:

begin				#start loop
  6 get_position 500 less_than if  	#check if the button on channel 6 is pressed 
    Sequence _1 			#if it is, run the Sequence _1 subroutine
  endif
repeat				#repeat script

Touching exposed connections can influence the voltage on the line, but a 10kΩ pull-up resistor is typically enough to mitigate that. Are you sure your resistor is 10kΩ (it’s hard to tell in the pictures)? Aside from better insulated wires and connections, you could also try a stronger pull-up like 1kΩ to see if that helps.

Brandon

Dear Brandon:

Again you did it; As you suggested, changing the 10K ohm resistor to a 1 k Ohm resistor solved the problem. and there is more I dared to implement the circuit of the 3A file that I sent you in the last email and it not only works with the Push Button, but by adding a SPDT type selector switch at the input it allows selecting the Manual operating mode that It is by pressing the Push Button and using the Routine ( Script ) that you sent us, but now in the second position of the SPDT selector switch and I already verified it, it was possible to emulate reception a trigger signal coming from a PLC; that as I commented you, is now able to activate the sequence of the robot Via Mini Maestro automatically, Thank you very much again for your valuable guidance and support.

And I leave you the file that I implemented thanks to your idea, if it helps someone, go ahead.

Postscript
1).- Regarding your advice from the previous email about the change of the name of the sequence, give me the opportunity to take a look at it more calmly since I am just arriving from the client’s facilities and to tell the client how you helped us to solve the problem, In exchange he lent me another robot and I’m going to practice, if I don’t understand, I’ll let you know

One last question:

2).- Again in several of the robots the motors of the shoulder and elbow joints are overheated They use MG 995 Servo Motors With a torque of 15 Kgf/cm. Do you think that that kind of the servos of these 2 joints are limited for the work they should supposed to do?

And I Tell you this Because Well, I checked 3 robots, disassembled the servos of these joints, they were tested with a Servo Motor tester and here they never presented Overheating.

So and if the answer is Affirmative, which ones would you recommend and what price are we talking about approximately per unit, to tell about it my client and he takes action.

Again tank you for all your patience

Best Regards

Sicerelly

Your Friend

Andrés Paredes Itto
Sentinel 1
Fig. 3.pdf (277.5 KB)

1 Like