Brushless Motor control and speed controlling

Discussion in 'The Projects Forum' started by KansaiRobot, Aug 30, 2015.

  1. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Hello everybody and thank you always for all the help.

    I am starting a project on brushless motors. Now, I have worked in the past with brushed motors (or DC motors using H-bridges) and with steppers.
    I have no experience with brushless motors so I am now researching. (If any of you have a link to a good tutorial , very welcomed)

    My question is- and it can be totally ignorant sorry- is, suppose I am controlling the motor already and it is turning at some speed. How can I see at which speed it is turning? Do I need a sensor? What is a Hall IC sensor?

    Also there is a schematic element I dont understand. See page 24 of
    www.tsukasa-d.co.jp/en/data_download/english_catalogue_2014.pdf

    in Motor Internal Connection Diagram you can see on pin 2,3 and 4 some element in the schematic . What is it??
    brushless.jpg

    Thanks a thousand for any help or advice.
     
  2. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    These are Hall effect sensors or equivalent, now a common method and more accurate is to include the 'Hall' tracks on an optical encoder and eliminate the discrete devices.
    These are used for the commutation as per the PDF.
    Max.
     
  3. nsaspook

    AAC Fanatic!

    Aug 27, 2009
    2,908
    2,168
  4. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Thank you for your replies. I ve researched and brushless motor control seems so simple and so complicated. Simple programatically since i ve caught the concepts already. Complicated in its required hardware, drivers etc.

    I think i am going to be using the following driver

    TCP-S12. (See the link in next post)

    My questions are:

    are the pins of this driver 5v? Or 24 v? I dont want to burn anything :(

    And, my original question, how to sense the speed of the motor? Originally i thought of getting the hall sensors input and calculate with a timer but first these hall inputs seem not to be provided by the driver and second it seems the driver has an encoder output

    Perhaps the calculation is being done already on the driver and all i got to do is get it from there???
     
    Last edited: Sep 1, 2015
  5. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
  6. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    That drive appears to be for a dedicated motor, probabally why there is no details on the motor signals etc.
    The input control signals on CN1 are open collector sink type provided by the end user.
    There is only one output labeled encoder so I don't see how the direction would be indicated?
    Max.
     
  7. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Thank you for your reply. Yes the driver is for a motor TG-22
    http://www.tsukasa-d.co.jp/en/data_download/english_catalogue_2014.pdf
    (page 24)

    Open collector sink type ? I see
    I thought the encoder would give me the speed, not so much the direction...

    I want to try experimenting as soon as possible so, my main concern is , will this work with 5V and is it isolated with the 24V part of the circuit?

    EDIT: I just realized what you said. Here , me, as a user, have to put an open collector as an input right? So by browsing some resources in the internet, how about SN7407N as suggested here?
    http://www.evilmadscientist.com/2012/basics-open-collector-outputs/

    If that is so, I have half of the circuit understood...

    --------------
    Also what are these?
    driver.jpg
    The ones circled in red?? what are these??

    EDIT: I just read they are Schmitt triggers....is that correct? (the bubble in the symbol is on the other side in the datasheets)

    EDIT2. now, which schmitt triggers would work? I am reading about SN74LS14N or SN74HC14N....


    And on the blue circles, do I have to put transistors here (since these are parts outside the driver right?) normal transistors? MOSFETS?? kinda lost here...sorry

    EDIT: now my question would be if something like the SN7407N would work?
     
    Last edited: Sep 1, 2015
  8. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    I found more information on this driver, and after translating , I am posting it here

    I/O Signals

    CN1

    H: Open L: 0~0.9V Input current 3mA MAX

    1) Start signal . H: Stop, Alarm Reset L: Operation
    2) Rotation Direction
    Change Signal H: Clockwise L: Counterclockwise
    3) Brake Signal H: Brake L: Normal Operation
    4) Speed Change Signal H: Set by RV1 L: Set by RV2

    -------------------------------------------------------------

    5) Encoder signal
    (Rotation Period
    Pulse Output) Pulse output synchronized with Open collector output
    motor revolutions Maximum Applied voltage 30V
    6 puls/rev Maximum current 10mA
    6) Alarm Signal
    detects abnormality in overload alarm sensor and output transistor on
    ----------------------
    7) External Speed Preset 0~5V
    8) External power supply Ground
    9) 24V
    10) 0V

    CN2

    1) 5V
    2) Sensor Input A
    3) Sensor Input B
    4) Sensor Input C
    5) GND
    6) Motor Output Coil A
    7) Motor Output Coil B
    8) Motor Output Coil C

    Now trying to figure out the circuit I have to build to make this work... and later calculate the speed. Any help appreciated
     
  9. Alec_t

    AAC Fanatic!

    Sep 17, 2013
    5,797
    1,103
    Since the encoder puts out 6 pulses per rev there will be 6n per minute at n rpm, hence n/10 per sec. So n = 10/p, where p is the pulse repetition period.
     
    KansaiRobot likes this.
  10. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    Any open collector TTL etc should work, you can also use contact closure to common if required.
    The output should be labeled Tach not Encoder. You cannot 'encode' position with one pulse.
    Max.
     
  11. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Yes, I agree the name is misleading but that is how it comes in the docs. A Tachometer is enough for this project.
    (although in their defense, maybe it is a mistranslation of the manufacturers. In the original japanese it says "Rotation Period Pulse Output" "It outputs a pulse synchronized with motor rotation (6 pulse/rev)"

    Thanks for the advice.
    Contact closure you say... ok, will look into it
    EDIT: Couldn't find any useful resource on "contact closures" :confused:

    I guess I will be using SN7407N if I got some
     
    Last edited: Sep 1, 2015
  12. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    Contact closure could be a relay or push button etc.
    Max.
     
  13. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    I couldn't get SN7407 but got some SN54LS07. SN74LS07
    EDIT: Sorry I made a writing mistake

    Are they equivalent??

    Reading their datasheets, it seems so, although the symbol they use is different. In the first case having a small diamond shape inside the triangle.


    As for schmitt triggers, couldn't get a SN7414
    instead I got a 74HC14AP from Toshiba which is a Schmitt Inverter...
    (no trigger??)
    wonder if I can use those without problems
     
    Last edited: Sep 2, 2015
  14. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    The L series are the same, just low power, the LS are high speed.
    Max.
     
  15. shortbus

    AAC Fanatic!

    Sep 30, 2009
    4,010
    1,530
    The "54" in your SN54LS07, is for a "mil-spec" part. Same working internally as a SN74LS07, just a higher temperature rated part.
     
  16. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Thanks a lot.

    Sorry for the trivial questions but in the pic I posted (Post #7) there is a "external power supply GND" and also a 0v input (together with the 24V). I suppose I should connect this two right? Since even using 5V for the logic and 24V for the motor, grounds should be connected right?

    I am doing it this morning! :eek::mad:

    EDIT: I connected GND to ground but forgot to connect the 0V line to the same ground.
    However, the motor is moving! I haven't feel this happy in days hehe.

    Well next, try the schmitt triggers to see the encoder pulse.

    EDIT2. I put leds but I suppose the pulses are too fast. I am going to use an oscilloscope.
    for the alarm signal, it is always ON... ummmmm....
    However the driver led says it is functioning normally.
     
    Last edited: Sep 2, 2015
  17. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,542
    2,369
    Pin 5 of CN2 and 8 & 10 of CN1 is ground common.
    Depends if the alarm output is active low or high?
    Max.
     
  18. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    ummm I am not connecting the 8 and 10 pins of CN1 yet the motor is moving
    (Now I see the driver schematic, they are connected internally!!) so ok with this item

    What it worries me now is the oscilloscope results

    the alarm signal (that is supposed to be just 5V or just 0v) is oscillating in a neat square curve.

    But the encoder! , is so strange, it just keeps being near 5V unless I reduce the speed to almost 0 (or 0) in which case it produces neat pulses.
    What!??

    One thing that I dont know if it significant or not. The symbol in post #7 has the negation bubble in the input. while in the schmitt inverter datasheets, the bubble is in the output...

    Wonder why this encoder thing is happening

    EDIT: I think I found the reason. Will try it tomorrow
    EDIT2: The reason was I forgot to (limit the current??? ) connect the 5v source and the resistor to the outputs as the schematics describe
     
    Last edited: Sep 6, 2015
  19. Alec_t

    AAC Fanatic!

    Sep 17, 2013
    5,797
    1,103
    The overall inverting function is the same.
     
  20. KansaiRobot

    Thread Starter Active Member

    Jan 15, 2010
    318
    5
    Well, I built it this time correctly on a breadboard and it works fine.
    Tried to build it on a perfboard.. man it does not even move!!:confused: am I this bad soldering and stuff.... anyway, will check it next week

    Now I am going to connect this stuff to my old PIC18F2550 so as to measure the RPM...

    Quick question though:

    What for are these "open collector" anyway. Just as MaxHeadRoom said, in my frustration I tried a button and even I connected the input pins directly to ground skipping the open collector IC and it worked. Then what for is this IC anyway... I am thinking of not using it....
    (any reference , see pic in post #7)
     
    Last edited: Sep 4, 2015
Loading...