|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
| Thread Tools | Rate Thread | Display Modes |
|
#46
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
and it just appeared
|
|
#47
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
its not wrking
|
|
#48
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
Basically, the sketch is right and i verified it, but when i uploaded it and everything, it said "uploading" and when it was done, acted as though it was an empty sketch and did nothing
|
|
#49
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
Sounds like it may not have the right com port selected.
On menu, go to "tools" then "port" and select port. Then on menu, go to "tools" then "Get Board info" and see if it returns "Mega" If not then go back to "ports" and select a different "port" Then try to "Get board info" Assuming the mega is plugged into the computer via usb cable, one of the ports will respond correctly. Use that one, and try to upload again. When uploading you will see LED activity on Mega board, rx and tx flickering. Last edited by tr6scott : 07-06-2016 at 15:07. Reason: added led activity. |
|
#50
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
it's definitely the right port, the "blink" example worked
|
|
#51
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
i used the sweep example under servo
|
|
#52
|
|||||
|
|||||
|
Re: swerve drive with arduino mega 2560
You're giving us mixed messages.
The last thing you said was basically "its not wrking". You're going to have to go into a lot more detail than that if you want us to help you make it do what you think it should be doing. What is "it" that should be working? What do you expect it to be doing? Once you tell us that, there will be more questions about how you have "it" connected and what else you have connected to "it". |
|
#53
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
Ok, did you wire pin(9) of the Mega to the PWM signal of the motor controller?
Did you wire GND of the Mega to the PWM Gnd of the motor controller? You can wire the PWM Red to +5v of the Mega, but I am pretty sure it is not required. The Sweep servo program uses pin(9) in the sketch. *As a debug tool, you could add code to turn on, or blink the LED on pin 13, so you would know that the program is running. Last edited by tr6scott : 08-06-2016 at 11:53. Reason: Added note about the LED. |
|
#54
|
|||
|
|||
|
Re: swerve drive with arduino mega 2560
Becky,
Assuming you still have the speed controllers wired up the same way you had in your picture earlier, I think Scott is on the right track. It looks like you have your speed controllers wired near the pin 0 / pin 14 area. (I would move the wires if you use pin 0 or pin 1 as those are also used for the USB connection.) In order for the speed controllers to work, they each need two wires; a signal wire (which I think is your white wire) and ground wire (the black wire). You can use most any pin for the signal - you just need to change the sketch to attach to the one you use, but you also need a the ground. A ground connection can be found next to pin 13 as well as on the opposite side of the mega in the "power" section. You may already have the ground running from across the board, but it is hard to see in the picture. If you actually have the ground connected, then just change the "9" in the myservo.attach(9) statement in the Sweep example to the pin number you are actually using (not 0 or 1). If you do not the ground connected, and you have a standard 3 pin connector on the end of your PWM cable, then it would be easier to plug one cable direcly to pins 12 (white), 13 (red) & gnd (black). Then change the "9" in the myservo.attach(9) to "12". (just verify that the black wire does indeed go to the ground connection on the Talon). Mike |
|
#55
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
FYI, not all Arudino Outputs are PWM compatible.
Code:
PWM: 2 to 13 and 44 to 46. Provide 8-bit PWM output with the analogWrite() function ![]() |
|
#56
|
|||
|
|||
|
Re: swerve drive with arduino mega 2560
Scott - I believe the Servo library uses a timer and software to generate the PWM signal, so it is independent of the hardware generated PWM pins.
Becky – Getting back to one of your older questions. You don’t have to have a steering sensor if you are only going to run it in a “tele-operated” like mode if you want to keep things simple, although it will still be useful if you want it to drive in some modes. However, if you want to do autonomous driving, then you will definitely need a sensor to know the actual wheel position. I’ve had good luck with these. Specifically the 6127V1A360L.5FS. For mounting you really need these to be 1:1 with your wheel modules so the analog value will directly relate to a direction on the wheels. Since your steering motor uses a smaller sprocket than the swerve module, I’d install another shaft with the same size sprocket on one of the other wheels and attach the position sensor to that. This should be fairly easy since you have the double sprockets at each wheel. One thing to remember is that these sensors generally do not like high side loads, so I wouldn't recommend putting the sprocket directly on the sensor shaft. Mike |
|
#57
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
If you are having trouble you can use the library I wrote to control FRC motor controllers. check the link below, and consult the wiki for help.
|
|
#58
|
|||||
|
|||||
|
Re: swerve drive with arduino mega 2560
Quote:
![]() |
|
#59
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
![]() |
|
#60
|
||||
|
||||
|
Re: swerve drive with arduino mega 2560
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|