Hybrid NA1 build

Joined
30 December 2002
Messages
232
I had the idea for years now and just never had the time or guts to start working on it but I figure if I don't post it I'll never get around to it. I'll be using GM etorque water cooled electric motor/generator to replace alternator for electric boost of about 70TQ, this also works as starter.
I have bigger idea later but I need to get my hands wet in to the electronic portion of this and learn how this all works together. I hope this will not be a big fail, getting it physically attached to the engine is the easy part the electronic part is the one that I'm little skeptical.

The battery pack has all the electronics needed and will fit nice in the trunk. On the right it has two air cooled lithium batteries totaling 130v. On top is the BMS (battery management system) that monitors temperature, volt etc to make sure all cells are distributed evenly. On left is the inverter and DC/DC converter. The DC/DC converter converts the volts down to 12v from 130v for car battery and accessories that run on 12v. The inverter runs the electric motor, that will also charge the lithium batteries on braking or if volts get below certain level. BMS is monitoring all the conditions. The nice thing about electric motors is you get full TQ from 0rpms. My engine is all bone stock NA J32 and it will stay this way, I'm not planning on getting it boosted with turbo or supercharger. I think the electric motors are the future like it or not. If anyone knows someone that works with canbus let me know ;) I think the first step would be to get canbus module to start communicating with battery pack, all suggestions are welcome as this is very early in this build and I don't know where this will go.

Pic of oem alternator next to this electric motor generator.
71c07816c366181e661271f6bc50fce6.jpg

b11efe17768d230c24f13693c78790fa.jpg


Thx,
David
 
Last edited:
An Arduino or TI Launchpad board would probably be the best cheap way to start interfacing with the CAN bus, I've used these in the past and the TI driver libraries make it fairly easy. If you've done any sort of programming before the learning curve shouldn't be too bad, if you've used C then you already know almost everything you need to program it. If you haven't programmed before the learning curve will be pretty steep but it's doable it will just take time, or you can try to find someone with experience in embedded programming who's willing to help.

Depending on the processing requirements I'd probably try to use that as the controller for the whole setup. You'd also need a way for the controller to know various engine parameters used to determine how to handle the electric motor, such as RPM, calculated load, road speed, etc.

Acting as a starter should be fairly trivial, I think you'd want to just set it up to spin the engine at roughly the same RPM as the factory starter. Basically just have the starter signal hooked up the the MCU (Arduino or Launchpad) and turn the motor on instead of the starter. You'd have to have some sort of logic to disable it when the engine turned on, probably just a cut off point around idle RPM.

As far as providing torque while driving, you'd have to come up with an algorithm to determine when to provide the extra torque, how much, when to charge, etc. One simple option might be to base it on calculated load.
 
Last edited:
An Arduino or TI Launchpad board would probably be the best cheap way to start interfacing with the CAN bus, I've used these in the past and the TI driver libraries make it fairly easy. If you've done any sort of programming before the learning curve shouldn't be too bad, if you've used C then you already know almost everything you need to program it. If you haven't programmed before the learning curve will be pretty steep but it's doable it will just take time, or you can try to find someone with experience in embedded programming who's willing to help.

Depending on the processing requirements I'd probably try to use that as the controller for the whole setup. You'd also need a way for the controller to know various engine parameters used to determine how to handle the electric motor, such as RPM, calculated load, road speed, etc.

Acting as a starter should be fairly trivial, I think you'd want to just set it up to spin the engine at roughly the same RPM as the factory starter. Basically just have the starter signal hooked up the the MCU (Arduino or Launchpad) and turn the motor on instead of the starter. You'd have to have some sort of logic to disable it when the engine turned on, probably just a cut off point around idle RPM.

As far as providing torque while driving, you'd have to come up with an algorithm to determine when to provide the extra torque, how much, when to charge, etc. One simple option might be to base it on calculated load.

Good info, thanks! I just started to google the Arduino, looks like this might be it, I also just found this CANdue Link it might be an option too. Need to research more what would work. I did not program with C but my day job is with IT, I'm not a stranger to programming would just need to figure it out. This week I'll try to get wiring harness done.

I was thinking for the control I will just use the GM gas pedal that I got already, it's canbus and hopefully it would pass the load according to the pedal position.
68b87579b19d6bd14b017ef6012b0442.jpg




Thx,
David
 
I've done some basic arduino programming for things like pwm control based on temperature. They're very handy and I'm happy to help (if I can). This is a very cool project!
 
I've done some basic arduino programming for things like pwm control based on temperature. They're very handy and I'm happy to help (if I can). This is a very cool project!

Awesome, yea will need all the help I can get. I’m meeting with EV tech next week to point me in right direction. I been hearing the arduino would be the way to go.


Sent from my iPhone using Tapatalk Pro
 
Tapping into the existing TPS sensor output would be a lot easier than rigging up a whole 2nd gas pedal.

Yea I agree, but this is on 91 with j32 swap. It’s not drive by wire. I’m not there yet but I might just need sensor on the throttle cable wire. To get it running on branch table I’ll use this GM gas pedal.


Sent from my iPhone using Tapatalk Pro
 
An Arduino will certainly be easier to program, but you'll have to interface with a CAN shield or something. I've used TI Launchpads pretty extensively and most of them have a CAN transceiver built in, which might make the hardware aspect a little easier. You could power it off of a 5V USB phone charger, if needed. Plus they're like $25. If you decide to go the launchpad route I can provide some assistance with choosing a processor and getting things configured. As MotorMouth said, TI has good support libraries and examples.

I'd start by drawing a signal block diagram indicating what signals need to go where, including what type of signals they are. For example, it sounds like throttle position is an analog signal and engine RPM is either a PWM signal (signal that feeds the gauge cluster) or it's on the CAN bus. Drawing that out will help determine what hardware you choose.

I'm keeping an eye on this thread, super interesting!
 
Yea I agree, but this is on 91 with j32 swap. It’s not drive by wire. I’m not there yet but I might just need sensor on the throttle cable wire. To get it running on branch table I’ll use this GM gas pedal.


Sent from my iPhone using Tapatalk Pro

A Honda TPS is 3 wires, ground, 5 volts, and signal. The signal swings from zeroish to 5ish from 0% to 100%. Just wiring up a potentiometer between a gnd and 5V signal with the wiper going to an ADC input on a launchpad/arduino would be significantly easier than figuring out how to integrate with a GM CAN gas pedal and would also be reusable code for when you migrate the system into the car. I've done a fair amount of embedded systems development on both the hardware and software side and simpler is almost always better.
 
Last edited:
Honda TPS ordered :) thanks for explaining it. It makes much more sense and its less work, great idea!

I spoke to EV tech yesterday and he explained there is two ways of getting this to work. One is get new inverter controller board engineered to accept known canbus commands. This sounds little out of my way and the second was to capture can bus commands from live car. When they hack the Tesla they tap in to can bus and drive the car capturing the can bus commands that were send to electric motor using SavvyCAN on arduino. I ordered the candue and now I just need to rent lacrosse then plug in to obd connector then drive the car and capture the can bus commands. With the frames captured they can be replayed to the motor on my banch table and later assign to a modules/sensors. But first I need to learn this SavvyCan, will try to capture frames for opening window in my other car and will try to open the window through the webserver on candue. There is soo much to learn, but it's moving forward.
 
Back
Top