Help ..!!! Chinese bldc driver..!

Discussion in 'The Projects Forum' started by naren_iisc, Mar 11, 2015.

  1. naren_iisc

    Thread Starter New Member

    Jan 13, 2015
    Hi everyone,

    I got one china made (FOCAN ELECTRONIC FACTORY) BLDC controller. I dont have all the documents for this. Just the pin color coding is what I know from one document that is available on the net.

    Now with this driver I am able to run my motor in self-test mode as well as by giving the throttle control also. But the problem is that I am not able to change the direction suddenly. Basically I will be using this driver for making a self balancing robot. and for this application direction change in very important.

    Is there anyone who have previously used this type of controller? please tell me how the direction of the motor is to be changed?

    There are some pins like Metre signal, Anti-thelf, Anti-thelf Power Source what are these pins for?
  2. shortbus

    AAC Fanatic!

    Sep 30, 2009
    If you need reverse, it looks like this isn't available on this controller. It is a bike/scooter controller and why would a bike/scooter have reverse?
  3. naren_iisc

    Thread Starter New Member

    Jan 13, 2015
    Thanks shortbus for your reply.

    Yeah I agree what that bike/scooter don't need the reverse direction. But for my controller if you see "How about Used them" section in the link mentioned above, direction reverse is possible (This link

    I checked that, it is happening. But the problem it is very slow. The Throttle input I am giving through the gyroscope and accelerometer reading (basically angle with respect to horizon). So what I was expecting is that if the angle positive then it should move in one direction and opposite for negative angle. Speed is varying fine. But if I change angle very fast it doesn't change the direction accordingly. rather it continues in the same direction even if the angle sign is different.

    Code (Text):
    2. angle_kal=(float)TiltCalculator_AngleRad()*180/3.14;
    3. to_dac_val=abs((int32_t)angle_kal*4096/90);
    4. if(to_dac_val>4096)
    5. to_dac_val=4096;
    7. //This pulse at Pin A6 is used to implement connect and disconnect the self-learn mode for changing direction as mentioned in the document.                              
    9.             if(angle_kal<0)
    10.            {
    11.                   if(dir_bit==1)
    12.                  {
    13.                                 GPIO_WriteBit(GPIOA, GPIO_Pin_6, Bit_SET);
    14.                                 Delay(10);    //10mSec
    15.                                 GPIO_WriteBit(GPIOA, GPIO_Pin_6, Bit_RESET);
    16.                  }
    17.                    dir_bit=0;
    18.                }
    19.             else
    20.             {
    21.                  if(dir_bit==0)
    22.                  {                                                      
    23.                              GPIO_WriteBit(GPIOA, GPIO_Pin_6, Bit_SET);
    24.                              Delay(10);    //10mSec
    25.                              GPIO_WriteBit(GPIOA, GPIO_Pin_6, Bit_RESET);
    26.                    }
    27.                   dir_bit=1;
    28.             }
    Also, I didn't get the meaning of Metre signal, Anti-thelf, Anti-thelf Power Source.
    Last edited: Mar 11, 2015
  4. shortbus

    AAC Fanatic!

    Sep 30, 2009
    Don't know about the computer coding stuff.
    Think the metre signal would be for a volt or amp meter on a dashboard. The anti-theft stuff is just what it says, a way to keep some one from riding off on your bike.
  5. Alec_t

    AAC Fanatic!

    Sep 17, 2013
    Suddenly reversing a motor places great stress on the motor and/or whatever it drives. It also needs a big change in the motor current. It is possible (just guessing) that the BLDC controller deliberately prevents rapid changes of speed, so as to prevent damaging current surges occurring.