You are here

Adding more temperature sensors via I2C

2 posts / 0 new
Last post
telltower_IV
Offline
Last seen: 1 month 3 weeks ago
VESC Free
Joined: 2020-08-03 21:46
Posts: 1
Adding more temperature sensors via I2C

Hello all,

At the end of the VESC Tool page, it reads,

"If you plan to use secondary devices, not yet compatible with the all new Firmware, please make sure not to use them in combination with VESC-Tool until the device and its software has been approved to work flawless with the latest VESC firmware!"

In the spirit of this, and with the hope that my work can possibly be helpful to someone, I am putting this out.

My team is experimenting with motors and we decided we want to use four NTC 10K 25C thermistors in a motor, instead of just one.

We had the idea of designing a custom PCB and mounting an ADS1115 ADC chip on it, along with the 4 thermistors hooked up. The intention was to get all 4 temperature readings through the ADS115 chip, and back to the VESC, via I2C, relying only on the SCL and SDA pins on the COMM port. This is with a 1.5m cable in between.

Using an existing DFRobot evaluation board as a demo, and their source code as reference, I've managed to develop a new app onto the VESC firmware and VESC Tool to get this to work. I then tested the app with the custom PCB and it still seems to work. 

I still need to clean up my code before I do a formal pull request, but in the meantime:

--------------------------------------------------
Can this setup introduce additional noise, as opposed to directly connecting the thermistors to the VESC?
Could there have been an easier/more sane way to accomplish this?
What other possible issues could arise from this?
--------------------------------------------------

I know there's not much to go on yet, so I'll try to make a pull request as soon as possible. Thanks a lot.

 

 

 

vadicus
Offline
Last seen: 2 weeks 12 hours ago
VESC Free
Joined: 2018-08-17 07:26
Posts: 312

In a perfect world, you would use I2C on the PCB most of the time with occasional branching out via some short wires and away from noisy environments. 1.5m is not awfully long but you would likely see some speed drop after 1m which won't be critical for temperature readings. However, your power/noise level from running the motor and the fact that thermistors are actually in the motor and the I2C line is likely running parallel to phase wires or, worse, bundled with phases, can be a factor.  For something low powered with a few amps of current, it will probably be OK. For more heavy duty tasks, you would want to consider CAN.