The MP3car.com Store  

Welcome to the MP3Car.com forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. Registering will also remove advertisements. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.

Go Back   MP3Car.com > Mp3Car Technical > General Hardware Discussion > Fusion Brain > Documentation and Tutorials

Reply
 
Thread Tools Display Modes
Old 03-11-2008, 11:04 PM   #1
Fusion Brain Creator
 
Join Date: Mar 2005
Posts: 1,864
My Photos: (0)
Tutorial - Air Ride Suspension

Hardware

So far, the only sensors we have data for are the Dakota Digital sensors.

http://www.dakotadigital.com/index.c...rod/prd124.htm

Code:
150psi, 1/8-27 NPT PSI R typical R max R min 0 10 13 5 14.5 31 35 27 29 52 56 48 43.5 70 74 66 58 88 92 84 72.5 106 111 101 87 124 129 119 101.5 140 150 130 116 155 170 145 130.5 170 185 155 145 184 214 154 Maximum 435 psi for 2 seconds only. Operating Temperature: -13F - +212F (to +248F max. 1 hour) on connecting thread.



Then, all you need to do is hook the air ride sensor up like so, knowing that the body of the sensor is grounded.

As far as software, Nick will be along shortly to do that bit.
greenman100 is offline   Reply With Quote
Sponsored Links
Old 03-11-2008, 11:21 PM   #2
Fusion Brain Creator
2k1Toaster's CarPC Specs
 
2k1Toaster's Avatar
 
Join Date: Mar 2006
Location: Colorado, but Canadian!
Vehicle: 2001 Honda Civic EX Coupe
Posts: 6,852
My Photos: (1)
To Evaluate an Analogue Input as an Air Ride Sensor

Code:
<?xml version="1.0" encoding="utf-8" ?> <function> <input order="1">PressureInput</input> <return type="numeric"> <operation type="subtract"> <parameter1> <number>18.313</number> </parameter1> <parameter2> <operation type="add"> <parameter1> <operation type="subtract"> <parameter1> <operation type="multiply"> <parameter1> <number>8.4879</number> </parameter1> <parameter2> <operation type="multiply"> <parameter1> <operation type="multiply"> <parameter1> <variable do="get">PressureInput</variable> </parameter1> <parameter2> <variable do="get">PressureInput</variable> </parameter2> </operation> </parameter1> <parameter2> <variable do="get">PressureInput</variable> </parameter2> </operation> </parameter2> </operation> </parameter1> <parameter2> <operation type="multiply"> <parameter1> <number>27.568</number> </parameter1> <parameter2> <operation type="multiply"> <parameter1> <variable do="get">PressureInput</variable> </parameter1> <parameter2> <variable do="get">PressureInput</variable> </parameter2> </operation> </parameter2> </operation> </parameter2> </operation> </parameter1> <parameter2> <operation type="multiply"> <parameter1> <variable do="get">PressureInput</variable> </parameter1> <parameter2> <number>49.943</number> </parameter2> </operation> </parameter2> </operation> </parameter2> </operation> </return> </function>

2k1Toaster is offline   Reply With Quote
Old 03-11-2008, 11:26 PM   #3
Fusion Brain Creator
2k1Toaster's CarPC Specs
 
2k1Toaster's Avatar
 
Join Date: Mar 2006
Location: Colorado, but Canadian!
Vehicle: 2001 Honda Civic EX Coupe
Posts: 6,852
My Photos: (1)
To Use above code

Insert this into your logic area (between "<logic>...</logic>". You obviously need to replace the analogue id with the id you declare in the io section "<io>...</io>". And you must reference the above code in a seperate function file in the "<require></require>" area.

**Note: The "..." in the following code mean that there can/will be other non-related items between the code sections. Fusion Control Centre Uber Edition doesn't care about the order. It only cares about heirarchy. Meaning "<iochannel>...</iochannel>" must occur between the opening "<io>" and closing "</io>" tags. If it is not in there, FCC will skip right over it, and that input channel will never be created.

Code:
... <require> ... <!-- Begin Function Instances --> <function file="content\config\AirRidePressureSensorModule" id="AirPressureSensor"></function> <!-- End Function Instances --> ... </require> ... ... <io> ... <!-- Begin Analogue Input Instances --> <iochannel id="RF Air" port="0" brain="TucciBrain2" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="LR Air" port="1" brain="TucciBrain2" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="LF Air" port="2" brain="TucciBrain2" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="RR Air" port="3" brain="TucciBrain2" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <!-- End Analogue Input Instances --> ... </io> ... ... <logic> ... <!-- Begin Variable Declarations --> <all_variables> <variable name="Variable_LeftFrontAir">50.0</variable> <variable name="Variable_LeftRearAir">50.0</variable> <variable name="Variable_RightFrontAir">50.0</variable> <variable name="Variable_RightRearAir">50.0</variable> </all_variables> <!-- End Variable Declarations --> <all_statements> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_LeftFrontAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="LF Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_LeftRearAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="LR Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_RightFrontAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="RF Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_RightRearAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="RR Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> ... </allstatements> ... </logic>


Last edited by 2k1Toaster : 03-12-2008 at 12:19 PM.
2k1Toaster is offline   Reply With Quote
Old 03-12-2008, 08:19 AM   #4
Constant Bitrate
dasaint80's CarPC Specs
 
Join Date: Apr 2004
Location: Philly
Vehicle: 2008/Scion/Xb
Posts: 146
My Photos: (0)
2k1toaster,
In what program does this have to be written in?
and
I see that this is an XML, Will I need to open this in a webpage? can I incorporate it to Streetdeck some how?
Where is the <io></IO> section?

Last edited by dasaint80 : 03-12-2008 at 08:22 AM.
dasaint80 is offline   Reply With Quote
Old 03-12-2008, 12:09 PM   #5
Fusion Brain Creator
2k1Toaster's CarPC Specs
 
2k1Toaster's Avatar
 
Join Date: Mar 2006
Location: Colorado, but Canadian!
Vehicle: 2001 Honda Civic EX Coupe
Posts: 6,852
My Photos: (1)
Quote: Originally Posted by dasaint80 View Post
2k1toaster,
In what program does this have to be written in?
and
I see that this is an XML, Will I need to open this in a webpage? can I incorporate it to Streetdeck some how?
Where is the <io></IO> section?

You can write this is any program that supports either xml (Dreamweaver, Word, Free XML Editors scattered around google), or in any plain text editor (Notepad and free ones too, just save the file as *.xml not *.txt).

You do not need or have to open it in a web browser. You can if you want to view the xml if you have no editor (which if you run windows you do, Start-->Programs-->Accessories-->NotePad).

This code is only understandable by Fusion Control Centre Uber Edition (FCC). Currently, the latest release of Uber is MDX (Managed DirectX) and downloadable as shown here: http://www.mp3car.com/vbulletin/docu...rsion-mdx.html

To incorporate into StreetDeck, currently you must embed FCC into Streetdeck as an external program. I have been working on a COM object (I promise I have been, but it is slow going now because of how Vista changed COM objects) which will allow the Fusion Brain to be controlled via a plugin (DigitalMod I believe is the SD term). This COM functionality is not available yet, but I hope it will be before summer. Until then, embedding the program works well. You may have to run SD in "testmode" to enable usage while moving.
2k1Toaster is offline   Reply With Quote
Old 03-31-2008, 06:40 PM   #6
Constant Bitrate
dasaint80's CarPC Specs
 
Join Date: Apr 2004
Location: Philly
Vehicle: 2008/Scion/Xb
Posts: 146
My Photos: (0)
Code:
<require> <!-- Begin Function Instances --> <function file="content\config\AirRidePressureSensorModule" id="AirPressureSensor"></function> <!-- End Function Instances --> <!-- Begin Font Instances --> <font name="LED50" originalSize="50" font_config="Content\config\fonts\FusionFontLED.xml"></font> <!-- End Font Instances --> </require> <graphics> <!-- Begin Global Graphic Settings --> <main_display designed_for_size="800,620" show_at_size="800,480" menubar="fixed" RunInSystemTray="False" MinimizeToSystemTray="False"></main_display> <background_image style="stretch" imagefilepath="Content\Images\Background_Air.png" page="0"></background_image> <!-- End Global Graphic Settings --> <button id="Left Front Fill" enabled="yes" function="trigger output" functionTargetID="Left Front Fill" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonUp.png" imageSecondary="Content\Images\ButtonUp.png" imageDisabled="Content\Images\ButtonUp.png" imagePushed="Content\Images\ButtonUp.png"></images> <display size="56,56" location="100,212" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Left Front Fill" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Left Front Dump" enabled="yes" function="trigger output" functionTargetID="Left Front Dump" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonDown.png" imageSecondary="Content\Images\ButtonDown.png" imageDisabled="Content\Images\ButtonDown.png" imagePushed="Content\Images\ButtonDown.png"></images> <display size="56,56" location="242,212" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Left Front Dump" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Left Rear Fill" enabled="yes" function="trigger output" functionTargetID="Left Rear Fill" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonUp.png" imageSecondary="Content\Images\ButtonUp.png" imageDisabled="Content\Images\ButtonUp.png" imagePushed="Content\Images\ButtonUp.png"></images> <display size="56,56" location="100,412" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Left Rear Fill" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Left Rear Dump" enabled="yes" function="trigger output" functionTargetID="Left Rear Dump" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonDown.png" imageSecondary="Content\Images\ButtonDown.png" imageDisabled="Content\Images\ButtonDown.png" imagePushed="Content\Images\ButtonDown.png"></images> <display size="56,56" location="242,412" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Left Rear Dump" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Right Front Fill" enabled="yes" function="trigger output" functionTargetID="Right Front Fill" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonUp.png" imageSecondary="Content\Images\ButtonUp.png" imageDisabled="Content\Images\ButtonUp.png" imagePushed="Content\Images\ButtonUp.png"></images> <display size="56,56" location="500,212" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Right Front Fill" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Right Front Dump" enabled="yes" function="trigger output" functionTargetID="Right Front Dump" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonDown.png" imageSecondary="Content\Images\ButtonDown.png" imageDisabled="Content\Images\ButtonDown.png" imagePushed="Content\Images\ButtonDown.png"></images> <display size="56,56" location="642,212" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Right Front Dump" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Right Rear Fill" enabled="yes" function="trigger output" functionTargetID="Right Rear Fill" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonUp.png" imageSecondary="Content\Images\ButtonUp.png" imageDisabled="Content\Images\ButtonUp.png" imagePushed="Content\Images\ButtonUp.png"></images> <display size="56,56" location="500,412" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Right Rear Fill" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <button id="Right Rear Dump" enabled="yes" function="trigger output" functionTargetID="Right Rear Dump" vote="absolute" vote_opinion="on" vote_priority="low"> <images imagePrimary="Content\Images\ButtonDown.png" imageSecondary="Content\Images\ButtonDown.png" imageDisabled="Content\Images\ButtonDown.png" imagePushed="Content\Images\ButtonDown.png"></images> <display size="56,56" location="642,412" page="0" z_order="0.0"></display> <options imageScaling="stretch"></options> <up_click up_click_function="trigger output" up_click_functionTargetID="Right Rear Dump" up_click_vote_opinion="off" up_click_vote="absolute" up_click_vote_priority="medium"></up_click> </button> <text_label id="Left Front Air TextIndicator" text="00" auto_monitor="variable" auto_monitorTarget="Variable_LeftFrontAir"> <font font_id="LED50" font_size="35"></font> <display location="165,165" page="0"></display> <config decimals="0" max_size="70,40"></config> </text_label> <text_label id="Left Rear Air TextIndicator" text="00" auto_monitor="variable" auto_monitorTarget="Variable_LeftRearAir"> <font font_id="LED50" font_size="35"></font> <display location="165,365" page="0"></display> <config decimals="0" max_size="70,40"></config> </text_label> <text_label id="Right Front Air TextIndicator" text="00" auto_monitor="variable" auto_monitorTarget="Variable_RightFrontAir"> <font font_id="LED50" font_size="35"></font> <display location="565,165" page="0"></display> <config decimals="0" max_size="70,40"></config> </text_label> <text_label id="Right Rear Air TextIndicator" text="00" auto_monitor="variable" auto_monitorTarget="Variable_RightRearAir"> <font font_id="LED50" font_size="35"></font> <display location="565,365" page="0"></display> <config decimals="0" max_size="70,40"></config> </text_label> </graphics> <io> <!-- Begin Fusion Brain Instances --> <brain id="micerebro">USB\VID_04D8&amp;PID_000C\6&amp;17EF8D69&amp;0&amp;4</brain> <!-- End Fusion Brain Instances --> <!-- Begin Timer Setup --> <timer id="input" interval="100"></timer> <timer id="output" interval="100"></timer> <timer id="gui" interval="50"></timer> <timer id="logic" interval="50"></timer> <!-- End Timer Setup --> <!-- Begin Digital Output Instances --> <iochannel id="Right Front Fill" port="1" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Right Rear Fill" port="2" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Left Front Fill" port="7" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Left Rear Fill" port="0" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Right Front Dump" port="8" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Right Rear Dump" port="9" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Left Front Dump" port="10" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <iochannel id="Left Rear Dump" port="11" brain="micerebro" type="digital_output"> <defaults defaultstate="off"></defaults> </iochannel> <!-- End Digital Output Instances --> <!-- Begin Analogue Input Instances --> <iochannel id="RF Air" port="0" brain="micerebro" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="LR Air" port="1" brain="micerebro" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="LF Air" port="2" brain="micerebro" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <iochannel id="RR Air" port="3" brain="micerebro" type="analogue_input"> <options history="10" auto_average="true"></options> </iochannel> <!-- End Analogue Input Instances --> </io> <logic> <!-- Begin Logging Setup --> <all_logging> </all_logging> <!-- End Logging Setup --> <!-- Begin Variable Declarations --> <all_variables> <variable name="Variable_LeftFrontAir">50.0</variable> <variable name="Variable_LeftRearAir">50.0</variable> <variable name="Variable_RightFrontAir">50.0</variable> <variable name="Variable_RightRearAir">50.0</variable> </all_variables> <!-- End Variable Declarations --> <all_statements> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_LeftFrontAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="LF Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_LeftRearAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="LR Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_RightFrontAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="RF Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> <if fire_on="logic"> <parameter1> <variable do="set" name="Variable_RightRearAir"> <evaluate function="AirPressureSensor"> <input order="1"> <analogue id="RR Air" time="0"></analogue> </input> </evaluate> </variable> </parameter1> </if> </all_statements> </logic>

How's this?
will this monitor and stabilize itself?
I don't have the car with me to test this. I'll get the car back in about 2 weeks.

Thanks

Steve

Last edited by dasaint80 : 04-06-2008 at 09:35 PM.
dasaint80 is offline   Reply With Quote
Sponsored Links
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
What do I need to hook up the air ride suspension? Maheriano Fusion Brain 8 12-29-2007 10:56 PM
DIY: Built a heater for my LCD nobb LCD/Display 42 10-27-2007 01:12 AM
2003 Civic CarPC (AIR RIDE) kumanan Show off your project 37 03-15-2007 10:20 PM
Air ride suspension keen70 Off Topic 6 02-14-2006 04:05 PM
Air ride suspension control? dragvette Newbie 1 01-22-2006 03:15 PM


All times are GMT -5. The time now is 06:44 PM.


Sponsored Links
The MP3car.com Store

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.1.0
Copyright © 1999 - 2008 Mp3Car.com Inc.
Ad Management by RedTyger
Message Board Statistics