chopperpilot 0 Posted October 19, 2009 Report Share Posted October 19, 2009 I have built the PANCAM and it works GREAT.....! Thanks Mr. RC-CAM for a great project The problem is I'm only getting about 110 to 120 deg of travel, even with my tx EPA's set at max...! I would like to get 180 deg. or the max....what ever that is? I have Hex Workshop loaded and ready to go but I can't seem to find the addresses or the Values...? Would/could someone please teach/talk me thru how to do the edit or would some kind soul please post oe email me the modded hex file. Thank You, Larry Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 19, 2009 Report Share Posted October 19, 2009 Thanks for the kind feedback. The PanCam readme file gives the instructions on how to calculate the value. As far as using your chip burner's editor, just check its instruction manual for the details. Be careful with the servo pulse edits. With the wrong choices, some servos can be made to exceed the mechanical end stop (or available pot rotation) if you go too far. Doing that can quickly ruin pots, gears, or motors. Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 I have done as you instructed.......but when I look for the address's you specify IE. 0x20D it doesn't reconize the "X" when I do the search..?? Thanks, Larry Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 "0x" is a preamble that simply means that the data is in hex format. For example, if instructed to edit address 0x20D, you would need to go to hex address 20D. You should use the editor that is included with your PIC chip programmer. General purpose editors might not format the addresses and data with the correct byte alignment. Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 (edited) Thanks Mr. RC-CAM.. I have found the address in my pic programmer SW and it has the values as you show. Now I can't figure out the math to convert default values to the 0.75mS and the 2.25mS pulse= ((stored hex value-0x800) * 8uS + 440uS ((800 *8us)= 6400uS + 440uS = 6840uS what do I do with this number to convert it to the 0.75mS I need...? or should it be ((836 - 800) * 8uS + 440uS = 728 .........? how do I convert this to the 0.75mS and 2.25mS Thank You for your help, Larry Edited October 20, 2009 by chopperpilot Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 0.75mS is 750uS 2.25mS is 2250uS pulse= ((stored hex value-0x800) * 8uS) + 440uS Solve for 750uS: 750uS = ((stored hex value-0x800) * 8uS) + 440uS 750uS - 440uS = (VAL - 0x800) * 8uS 310 = (VAL - 0x800) * 8uS 310 / 8 = VAL - 0x800 39 = VAL - 0x800 (39 dec is 27 hex) 0x27 = VAL - 0x800 0x827 = VAL Solve for 2250uS: 2250uS = ((stored hex value-0x800) * 8uS) + 440uS 2250uS - 440uS = (VAL - 0x800) * 8uS 1810 = (VAL -0x800) * 8uS 1810 / 8 = VAL - 0x800 226 = VAL - 0x800 (226 dec is E2 hex) 0xE2 = VAL - 0x800 0x8E2 = VAL Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 WOW.........I would never have figured that out....!! Thank you so much, Larry Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 (edited) Ok so I did the hex file mod and all went well...however it only added about 20 deg. on either end...for about 140 deg total..! I took what I learned from you examples and came up with the following: Does this look correct for a new minium pulse value...? 0.50mS is 500uS Solve for 500uS 500uS =((stored hex value 0x800) * 8uS) + 440uS 500uS 440uS =(VAL 0x800) * 8uS 60 = (VAL 0x800) * 8uS 60 / 8 = VAL 0x800 7.5 = VAL 0x0800 ( 8 dec is 08 hex) 0x08=VAL 0x800 0x808 = VAL 2.50mS is 2500uS Solve for 2500uS 2500uS =((stored hex value –0x800) * 8uS) + 440uS 2500uS –440uS =(VAL –0x800) * 8uS 2060 = (VAL – 0x800) * 8uS 2060 / 8 = VAL – 0x800 257.5 = VAL – 0x0800 (258 dec is 102 hex) 102=VAL – 0x800 0x802 = VAL Thanks, Larry Edited October 20, 2009 by chopperpilot Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 it only added about 20 deg. on either end...for about 140 deg total..! Are you sure the servo is capable of going further? Maybe it is stalling at those endpoints? As mentioned is the distributed readme file, the calculated values must be between 0.75mS to 2.25mS. If you need more range then you should try a different servo or hack the servo's feedback pot to trick it into giving more travel range. Do not use a common digital servos since most will electronically limit travel to prevent gear damage. However, the Hyperion digitals will allow for nearly 180 degrees if you use their PC programming feature. BTW, for best Pancam operation you will want to set the Tx's EPA's to a small value to allow for better control of the slower speeds. Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 Hi Mr. RC-CAM, I have check and the servo will travel about 20 deg. farther on both ends before hitting the internal stops.. I have the EPA's set at 105 on both ends and the PANCAM works great.....just would like to try and get that extra 20 deg. if I can. Do I have the edits correct....I think I may have the 2.50mS value wrong. Thanks for all your help, Larry Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 The calculated 2.50mS value is incorrect. If calculated correctly, it will still be wrong since 0x902 is not a proper instruction. However, it doesn't matter since the values for 0.75mS and 2.25mS are about the "biggest" that are allowed. If you need more travel range, you must choose a different servo. Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 Ok, thanks.....I'll try another servo..! Larry Quote Link to post Share on other sites
Kilrah 2 Posted October 20, 2009 Report Share Posted October 20, 2009 (edited) However, it doesn't matter since the values for 0.75mS and 2.25mS are about the "biggest" that are allowed. Huh? All my pan servos have been operated in the 500-2500us range for years. Never broke one. Changing servo most likely won't help, pulse -> angle response is very consistent across brands and models for analog servos from what I've seen. Edited October 20, 2009 by Kilrah Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 Huh? All my pan servos have been operated in the 500-2500us range for years. Never broke one. Changing servo most likely won't help, pulse -> angle response is very consistent across brands and models for analog servos from what I've seen. So what do you suggest....? do you have a hex file I can try..? Thanks, Larry Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 (edited) pulse -> angle response is very consistent across brands and models for analog servos from what I've seen. I see a difference in servo travel for a given pulse width, depending on brand and servo model. For example, with the original (default) Pancam values I got 150 degrees with a HS-605MG. That is much further than what is reported with the revised hex values, which would allow greater travel than that. During PanCam development I tested a couple dozen different servos. Their max travel varied, but many provided ~140 degrees with the stock (default) values. A couple servos came very close to the mechanical limits (within 5 degrees) and would certainly have exceeded the mechanical endpoint with the revised values discussed in post #6. It is for this reason I think you should try some other servos. Just grab them from you R/C junk box and see what you find. If you are not successful then simply mod the servo for increased travel (two resistors on the feedback pot). However, it doesn't matter since the values for 0.75mS and 2.25mS are about the "biggest" that are allowed. Just to clarify, these are the biggest allowed by PanCam. The data range is only 8-bits and with the provided resolution, larger effective values are not possible (they will exceed 8-bits). Although I doubt you will see a noticeable increase in range, you can use 0x801 and 0x8FE for your edited values. Perhaps those, along with another servo choice, will give what you need. Edited October 21, 2009 by Mr.RC-Cam Added 0x801 and 0x8FE comment Quote Link to post Share on other sites
Kilrah 2 Posted October 20, 2009 Report Share Posted October 20, 2009 (edited) do you have a hex file I can try..? No, I've made my own device for that purpose, and as for panning one can't do the adjustements on the radio, for convenience I implemented a calibration procedure to store the end points. I slowly move the servo with the stick until I reach the mechanical stop (or whatever other position I want as an end point), go back a bit, press a button, then do the same on the other side. That way it's easy to adapt the behavior to any servo. Edited October 20, 2009 by Kilrah Quote Link to post Share on other sites
chopperpilot 0 Posted October 20, 2009 Author Report Share Posted October 20, 2009 I see a difference in servo travel for a given pulse width, depending on brand and servo model. For example, with the original (default) Pancam values I got 150 degrees with a HS-605MG. That is much further than what is reported with your revised hex values, which would allow greater travel than that.During PanCam development I tested a couple dozen different servos. Their max travel varied, but many provided ~140 degrees with the stock (default) values. A couple servos came very close to the mechanical limits (within 5 degrees) and would certainly have exceeded the mechanical endpoint with the revised values discussed in post #6.It is for this reason I think you should try some other servos. Just grab them from you R/C junk box and see what you find. If you are not successful then simply mod the servo for increased travel (two resistors on the feedback pot).Just to clarify, these are the biggest allowed by PanCam. The data range is only 8-bits and with the provided resolution, larger effective values are not possible (they will exceed 8-bits). Although I doubt you will see a noticeable increase in range, you can use 0x801 and 0x8FE for your edited values. Perhaps those, along with another servo choice, will give what you need. Thanks....I'll give it a try......if it works it works...if not well we tried. FYI, my pan servo is a hitec..super gears and ball bearing.....I would really like to keep it in place.... Thanks Quote Link to post Share on other sites
Mr.RC-Cam 129 Posted October 20, 2009 Report Share Posted October 20, 2009 FYI, my pan servo is a hitec..super gears and ball bearing.....I would really like to keep it in place.... If you need to use that servo then modify it for extended travel. Start with a 470 ohm resistor on each outside leg of the servo's feedback pot. That, along with the servo pulse stretching already built into PanCam, should allow for all the travel you need for ~180 degrees. Quote Link to post Share on other sites
chopperpilot 0 Posted October 21, 2009 Author Report Share Posted October 21, 2009 Mr. RC-CAM Well it seems you were right the new edit did nothing.....I will have to try some different servos, don't really want to hack the servos but will keep it in mind.....may be, I don't even need more then the pan I have....haven't got the bird in the air yet, still building and wiring in the "Poor Mans OSD". Thanks for the help...! Larry Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.