Prototype complete (VTCM)

08 Jun 2011

Hi all,

Wanted to thank all the folks on this site who helped me while developing my prototype. I thought I'd share what I've done.

Cheers!

http://lxcustomsolutions.weebly.com/vtcm-pictures.html

PS: There are folks out there that feel that ANY project related to a automobile is taboo. Please don't waste your time on that subject. There is a multi-billon dollar industry that revolves around automoble performace solutions / enhancements. This is no different.

09 Jun 2011

Looks good, can you tell us more about what it is doing?

09 Jun 2011

Sure Matt!

I'm part of a community of car enthusiasts who like to modify and drive Mopar LX cars… The (LX class) include the Chrysler 300C, Dodge Charger, Dodge Magnum, Dodge Challenger. These cars run a 5-speed transmission named a NAG1. It’s actually a Mercedes (W5A580) Transmission. This transmission is a fully Hydro/Electronic design where all of the actual control of the trans is done by the Transmission Control Module (TCM) and Power-train Control Module (PCM).

Chrysler TCM-PCM control strategy is to have the car shift as smooth as possible. It also has adaptive learning that continually tries to push the operation toward early shifts to keep the RPMs down. Considering the LX platform offers high performance engines and a Street Racing Technology (SRT) line of cars, it’s sort of an odd combination to have a transmission that wants to shift to soon and to soft…

The VTCM was designed to overcome the undesirable operation of the OEM transmission control system. It does this by utilizing the already available positive design aspects of the OEM system. In other words, it uses existing handles to deliver a more desirable effect.

The NAG1 comes with manual slap (+)(-) shifter that allows the driver to manually choose the gear. Many cars have this feature... Built into the use of this shifter are limits on to when the TCM will allow the shift to take place. These limits keep the car from stalling or over-revving the engine… That is a good thing.

There is also a way to alter the “Firmness” of the shifts that take place by bypassing electrical current around the shift pressure control solenoid. By doing this the internal shift pressure in the transmission is artificially raised producing a quicker and firmer shift.

So this is what the VTCM system I created does…

• It reads and decodes select CAN messages from both the C-Bus (engine) and B-Bus (body) CAN systems. • It reads into memory a pile of variables that are stored in the configuration files on the mbed. • When the VTCM program is engaged, it will shift the car for the driver while in Auto-Stick mode. It applies Up-Shift, Down-shift, Kick-Down, and desired Firmness based on the parameters set for the mode that’s engaged. The VTCM has the ability to operate in up to 5 different modes. • So-In short, The VTCM becomes the “Auto-Pilot” that operates the manual shifting of the car for the driver. And in doing this, it has become a “Virtual Transmission Control Module”.

Considering how to properly apply a shifting strategy was a daunting job. And to do all this and have it done quickly and efficiently took some thought…. The Mbed program actually is running in a 5 seperate (uncoupled) loop strategy to handle the different processing aspects of the overall program. For example, Messaging In and out of the mbed is managed by its own process loop kept separate from the CAN Reading Loop, which is separate from the CAN decoding loop. Etc… Before these processes were uncoupled the mbed would lock up often… Now it never does. And I’m absolutely impressed on just how much processing this little bugger does…

In addition to the VTCM and the two slave modules (the shifting module and the firmness module)… I also need to develop a Management utility for making adjustments, operational monitoring and data logging. VTCM_Manager.exe was written in C# and is used to interface with the VTCM program via serial communication. It manages all the configuration setting and provides a graphical interface into how the VTCM is controlling the car…

The end result is the car (when driven with this turned on) is much more fun to drive. It says in the power band better and shifts more like I would if I had a manual transmission. It’s raised the fun factor up a few notches… : -)

09 Jun 2011

Wow! Are we going to get a before/after video to get the full experience of the change in the car :)

09 Jun 2011

LOL... I've been asked that already... When you are in the car the difference is obvious, but I'm not sure a viedo will convey the change. When I started to develop this concept I was using a CAN-USB reader (Lawcel) and was developing VTCM program on my PC in C#. This was before I started to move all this to a PIC controller (mbed)...

For the Analysis I chose a route to drive (a curvy canyon road), and then drove the route holding a set averave speed (40 MPH). I logged out the data during each run while in different modes of operation. In the end I averaged the RPM, MPH, and Gear engagement. A higher average RPM and lower average gear indicates the car holding in gear longer under the same conditions... This results in a more agressive run from the car.

I need to do this same analysis on the VTCM (MBED) solution, but I expect the results to be similar to these old test results...

/media/uploads/TRS300/01_rpm_averages.jpg

09 Jun 2011

I see, so the car already has the automatic gear changing hardware, the Mbed is tapping into that and working out the best time for the gear change... right?

09 Jun 2011

Yes that's it. It controls all aspects of shifting the car (Upshifts, Downshifts, Kickdowns, and Firmness) while the car is in auto-stick (manual shift) mode. So in the end you have a custom TCM that you can program that controls the shifting based on your settings.

--

09 Jun 2011

Timothy Stone wrote:

Yes that's it. It controls all aspects of shifting the car (Upshifts, Downshifts, Kickdowns, and Firmness) while the car is in auto-stick (manual shift) mode. So in the end you have a custom TCM that you can program that controls the shifting based on your settings.

Fun stuff indeed!!!

My car is a 1991 Mazda Miata, so gear changes are subject to human control for me ;) That said I did write a Miata ECU project based on the Arduino... and recently ported it to the Mbed, where I'm finding it much easier to meet the spark and fuel injector deadlines with this 100Mhz CPU :) I hope to be able to post my project as soon as I have some working hardware.

09 Jun 2011

Looking forward to seeing posts on your project. Cheers!