Using the 12 MHZ crystal vibration 51 single-chip microcomputer and 42 two phase four wire, step away from the Angle of 1.8 degrees, TB6600 drive, segmentation, the timer can only 20 to 60 r/min, is only slowly rise speed of 60 r/min, is what reason, is there a way to continue to advance? On the drive voltage of 12 v electric current, change the duty ratio also tried
CodePudding user response:
refer to the original poster qq_44800558 response: using the 12 MHZ crystal vibration 51 single-chip microcomputer and 42 two phase four wire, step away from the Angle of 1.8 degrees, TB6600 drive, segmentation, the timer can only 20 to 60 r/min, is only slowly rise speed of 60 r/min, is what reason, is there a way to continue to advance? On the drive voltage of 12 v electric current, change the duty ratio also tried The building Lord, stepper motor is no-load or load? How much is the TB6600 subdivided control? Auto reload mode is the timer hold 20 is the initial value of 20? To improve the speed of the stepper motor to improve the control frequency, CodePudding user response:
If the motor power supply voltage is not enough CodePudding user response:
You don't have a timer, bytes of the output pulse of the single instruction, to see how fast can I get to fastest CodePudding user response:
51 single chip microcomputer frequency is too low, send out a higher frequency of pulse, Because you did not give a segmentation, if calculated on 16 segment, need one revolution of the stepper motor (360/1.8 * 16)=3200 pulse, 60 r/min, which is 1/SEC, support 60 r/min speed, need for 1/3200 of a second pulse cycle=312.5 microseconds, microcontroller IO port keep delicate time for 312.5/2=156.25, you set the MCU cycle as 20 microseconds, and then there were 136 microseconds, in and out of the timer interrupt, assignment statements will take time, so the microcontroller performance couldn't keep up with you! The most effective method of simple is: 1, change a 24 m crystals, twice as fast speed,; 2, when burning, set to 6 t mode will be twice as fast speed; 3, if you can, you can use 1 t compatible with 51 single-chip microcomputer, the speed will significantly increase, CodePudding user response:
51 timer is increases the count, if use 16 bit timer mode, the initial value of timer should add up is faster and faster, the greater the initial value, the faster the timer interrupt, if the initial value of 20, equivalent to plan the time is 65536-20 such a clock pulse, CodePudding user response:
reference 1st floor yishumei response: Quote: refer to the original poster qq_44800558 response: Using the 12 MHZ crystal vibration 51 single-chip microcomputer and 42 two phase four wire, step away from the Angle of 1.8 degrees, TB6600 drive, segmentation, the timer can only 20 to 60 r/min, is only slowly rise speed of 60 r/min, is what reason, is there a way to continue to advance? On the drive voltage of 12 v electric current, change the duty ratio also tried The building Lord, stepper motor is no-load or load? How much is the TB6600 subdivided control? Auto reload mode is the timer hold 20 is the initial value of 20? To improve the speed of the stepper motor to improve the control frequency, no CodePudding user response:
reference 5 floor zetaluoyiqun reply: 51 timer is count, if use 16 bit timer mode, the initial value of timer should add up is faster and faster, the greater the initial value, the faster the timer interrupt, if the initial value of 20, equivalent to the time meter is 65536-20 such a clock pulse, is not the reason, CodePudding user response:
references on 4th floor peace reply: 51 single chip microcomputer frequency is too low, send out a higher frequency of pulse, Because you did not give a segmentation, if calculated on 16 segment, need one revolution of the stepper motor (360/1.8 * 16)=3200 pulse, 60 r/min, which is 1/SEC, support 60 r/min speed, need for 1/3200 of a second pulse cycle=312.5 microseconds, microcontroller IO port keep delicate time for 312.5/2=156.25, you set the MCU cycle as 20 microseconds, and then there were 136 microseconds, in and out of the timer interrupt, assignment statements will take time, so the microcontroller performance couldn't keep up with you! The most effective method of simple is: 1, change a 24 m crystals, twice as fast speed,; 2, when burning, set to 6 t mode will be twice as fast speed; 3, if you can, you can use 1 t compatible with 51 single-chip microcomputer, the speed will greatly enhance, is perhaps for this reason, the microcontroller itself performance is not very clear, will only some apply, thank you very much for providing the train of thought