DIY Brushless Driver Board

Aus www.wiki.ardumower.de
Wechseln zu: Navigation, Suche

DIY ArduMower Brushless Driver Kit

In this chapter you will find the information about the DIY ArduMower Brushless Driver, based von TI DRV8308 Chip.

PCB1.x with Brushless Driver(Pic. by Uwe)

General Information about the ArduMower Brushless Driver like architecture and furth options, you will find in another WiKi [1]

You can find more information about the Boards here:

 Brushless Drive [2]
 Brushless Adapter [3]
 Blade-Motor Protection  [4]

== Attetion: == To prevent the BL Motordriver against reverse voltage from the free spinning motor, DO NOT CUT the motor coil cable! Specially for the blade motors, with no gear. The cable resistor and the inductivity of the cable helps to reduce the energy of the free spinning motor and protects the driver board.

Description

DIY ArduMower Brushless Driver, this is a not configured Driver, as it comes out of the factory. It is for experts, able to program there own configuration to the device. It is needed if you want to use another mower than an ArduMower with other types fo motors. For this, you need expert knowledge about electronics / brushless motors and software skill. With this kits, you are working on you own risk.

One IMORTANT notice at the beginning: The OTP ROM, where you have to store the program parameter for your motor, can programmed only ONE time! OTP-ROM changes afterwards are not possible. So please think twice before you burn the parameter into OTP-ROM. More on this later in this article.

Building the SPI Brushless Driver Programmer

Before you start the assembling of the Driver Board, we will build the programmer. To build your own programmer for the controller DRV8308, you need an Arduino Nano and a 5 pin JST-XH plug with cramped wires. Solder the wires as shown in the picture and ready is the programmer hardware. Download the Nano program, you can finde here on github, and load it on the Arduino Nano. Let the Arduino Sketch programm open, we need it later.

Brushless Driver connector JST-XH 5pol SPI Brushless Driver Programmer (Arduino Nano) Brushless Driver connector JST-XH 5pol

Brushless Drive Test Software

Here you will find the Arduino software to test and write the motor parameter: https://github.com/Ardumower/ardumower/tree/master/code/Brushless/DRV8308_SPI_Nano

Here you will find the Arduino software to test and write the motor parameter:

To work with, open the file DRV8308_SPI_Nano.ino with Arduino Sketch, compile ist and load it to the prepared Arduino Nano.

Open the Sketch Monitor and you will see the DRV8308 register status.

Enter a questionmark “?” and you get a list of all valid comands.

To change the driver parameter you must cjange the definition in the program code directly. Each reg. hast ist own definition:

  1. define Reg00

.. ..

  1. define Reg0B

A parameter discrition you will finde in the DRV8308 Datasheet[5], at page 37-40.

Attention, before you burn the double check that you have changed the Reg. 0 speed control from SPI (default in the program) to PWM! Change SPI seed control to PWM

If you will burn the one time memory, you must change the #define Burn_Enl false //true parameter to true. Then the Nano is able to burn the parameter. Type "B" & Enter to burn the parameter and a "Y" after you hafe read the waring "Write OTP memory? It can programed only once!" and then press Enter

Connector Pinout

short connection overviw for ACT Motor

HAL Sensor:

clamp + : 5V Power out for HAL sensoric (ACT Motor HAL cable : red )

clamp - : GND for for HAL sensoric (ACT Motor HAL cable : black )

clamp U : HAL sensor U (ACT Motor HAL thin cable : yellow )

clamp V : HAL sensor V (ACT Motor HAL thin cable : green )

clamp W : HAL sensor W (ACT Motor HAL thin cable : blue )

Motor Coils:

clamp U : coil U (ACT Motor coil thick cable : yellow )

clamp V : coil V (ACT Motor coil thick cable : green )

clamp W : coil W (ACT Motor coil thick cable : blue )

To connect the mow / blade motor, see also the Blade Motor Protection Wiki[6]


This ACT Motor color scheme is not standardized, it can be different to other suppliers. Please have a look to the motor datasheet first.

Build BL Driver Board and connect the cable

Please scroll dorn and read the section "Bug fix" before you power up the PCB and Motor Driver!

If you use a Brushless Adapter V1.0 and a BL Driver V1.1, please note that some pull ups are required.

Reffer to this link: https://wiki.ardumower.de/index.php?title=Brushless_Adapter#ArduMower_Brushless_Adapter

Step 1 Soldering :

Okay, you are an expert, you do not need an Instruction how to solder some parts on a PCB. Lets go to step 2.


Step 2 Connect the Brushless Motor :

== Attetion: == Do NOT cut the motor coil cable! Specially for the blade motors, with no gear. The cable resistor and the inductivity of the cable helps to reduce the energy of the free spinning motor and protects the driver board. Have a look into the motors datasheet and identify the motor coils U,V & W wires and connect them to the board connector. Also identify the HAL sensors for coil U,V & W and connect them to the HAL board connector as well.

== Attetion: == Do NOT connect the 24V main Power to HAL + and GND ! This is 5V power out for the HAL sensors only!


Step 3 Connect the Power :

Also easy for you, connect the power cable, but switch the power off before! You do not need cable with a big diameter. Power cable with 0.5mm² (max.0,7mm²) are the best choice . Please take care that you have the right polarity! The +24V power to the connector marked + and ground / - pole to the connector marked - . Check it twice! If you do it wrong, the 3.5A fuse on the board will blow up and you have to change it.

Finaly your board should look like in the picture.

Brushless Driver connector JST-XH 5pol

Test the motor and adapt the parameter

All power is off for Driver Board and Arduimo Nano Programmer. You have connected the power, the motor coils, and the HAL sensors.

If you have the BL Driver Version 1.1:

Bridge the EN signal (pin2) with +5V / VCC from the Nano.

If you habe the BL Driver Version 1.0:

Bridge the EN signal (pin2) and GND (pin 7) on the 8 pin flat cable connector.

Then plug in the Nano SPI plug into the SPI Board connector.

Brushless Driver connector JST-XH 5pol

Ok, now cablinbg is done. Please double check the right 24V polarity of the board power.

Please not, if your motor does not run with the preset parameters, it will caused in unexpected reactions of the motor, So, please take care that the motor is fix and secure on your table. Later, if we start the motor, have one finger on the power off button, to switch power of if the motor jammed.


If all connections are correct, you can power on the 24V power for the Driver Board. Don't panic is nothing happened, that's normal, because there are no parameter set in the driver.

Attention, the next step will start your motor! Be prepared to power off the 24V power if the motor jammed. Now you can plug in the USB connector into the Arduino Nano to power on your programmer. After 1-2 seconds the Motor will start turning. If he runs smooth you can take away your finger from the off button and go ahead with testing.

Use the Arduino Nano programm to controll the motor and test the parameter.

3D-printed PCB holder

You can download two kinds of PCB-holders.

A flat one for the mowing motor here.

A round one to mount the driver by cable ties directly on top of the drive motors here here.

Example of the printed PCB-holders.

Bug fix

Do not use Motor-Stop: Do not use the Motor-Stop switch contacts (P49) if you use the Brushless Motor Drivers. If you switch off the main power via Motor-Stop when the motor is turning, the protection diodes can not limit the generator power against the battery power. The generator power (>60V) can destroy the BL Driver board!


Motor / Gearbox: If you remove the gearbox from the motor please take care that no small parts are falling in the gearbox. Specially take care about chunks from the screw protection lacquer. This will hinder the motor.


Brushless Adapter Version: See the combination changes of Brushless Adapter Version in combination with BL Driver Version. Link:

https://wiki.ardumower.de/index.php?title=Brushless_Adapter#ArduMower_Brushless_Adapter


BL Odometry Signal: The odometry divider on PCB 1.x caused a problem with the BL odometry signal. The ArduMower will drive not synchronized, one wheel is slower. You can fix it with a 220nF an each ot the odometry inputs.

220nF at each odometry input


Yellow Fuses on the PCB1.4: Take care that the yellow fuses on the PCB1.4 do not get in contact with the BL adaperter board. This can blow up the motor driver board!

Fuse on PCB1.4, wire going up, over the fuse before they turn down


Stock all contacts at the power side and do NOT add coolers to 7805 power IC

Stock all contacts at the power side, over this 2 pins all the current flowes for the motordiver. Also do not add parts or cooler to the electronic. It is not needed and can cause a shortage!

Errorcooler.JPG