Stormworks: Build and Rescue

Stormworks: Build and Rescue

33 ratings
Heading Hold Microcontroller
   
Award
Favorite
Favorited
Unfavorite
Vehicles: Sea
Tags: v0.10.27
File Size
Posted
Updated
41.653 KB
22 Jul, 2019 @ 8:22am
21 Jun, 2020 @ 8:50am
6 Change Notes ( view )

Subscribe to download
Heading Hold Microcontroller

Description
Given a current heading, and a desired heading, output rudder commands to keep vessel pointed towards desired heading.

Currently it is setup to support a "Toggle and Go" setup whereby when a toggle button is enabled, the current heading is set to the desired heading. The microcontroller will then output rudder commands to hold the heading that the vessel was pointing towards when the toggle button was enabled. By using the Heading adjust left/right input nodes, you can bind physical buttons to slightly tweak the desired heading in one direction or the other. It also allows the player to manually manipulate the vessel temporarily to avoid obstacles or adjust approaches. When no further player input is detected, the controller will resume heading hold.

To disable the system, simply toggle the button off. When a new heading is desired, simply re-toggle the button and again, the current heading will be set as the new desired heading hold.

Node Descriptions

System Enabled (Input): Whether or not the system is enabled. This should be bound to the toggle button on your vessel that you will use to enable and disable the heading hold system.

Current Heading (Input): This will come directly from the Compass Sensor on your vessel. This controller handles all the conversions for you, it just accepts the raw input from the sensor.

Heading Adjust Left (Input): Allows you to adjust the desired heading by one degree to the left. Best if bound to a pilot seat hotkey or a Standard (not toggle) button.

Heading Adjust Right (Input): Allows you to adjust the desired heading by one degree to the right. Best if bound to a pilot seat hotkey or a Standard (not toggle) button.

Rudder Player Input (Input): This should come from your control seat. This allows the pilot player to manipulate the vessel manually (to avoid obstacles, adjust approach, etc.) temporarily. Once input is no longer detected, the heading hold system will re-engage automatically.

Rudder Output (Output): This is the output commands that will be sent to your rudder control surface(s). This is what actually turns the vessel to hold the desired heading.

Stored Heading (Output) (Optional): This is an optional output that simply outputs the heading that the controller is attempting to hold. It will be the heading that was the vessel's current heading when the system was toggled on.

Current Heading Output Degrees (Output) (Optional): An optional output that simply outputs the current world heading in degrees. This allows you to not worry about converting the current heading into degrees from the compass' -0.5 to 0.5 scale.
73 Comments
SpeedKiller.txt 16 Jun @ 4:25pm 
Why dont you have a number input for the heading?
E. 8 Dec, 2023 @ 8:53pm 
Where do i connect everything
doeydobar 9 Aug, 2023 @ 1:25pm 
Great, thanks. Wont be done for another few weeks
Mr. Leonard  [author] 8 Aug, 2023 @ 8:10pm 
Yea for sure. Let me know when you upload it. I'd like to check it out.
doeydobar 8 Aug, 2023 @ 4:49pm 
Can I use this in a future workshop submission? You will be credited in big blue letters
Nick Name 13 Dec, 2022 @ 1:05pm 
Oki thanks !
Mr. Leonard  [author] 10 Dec, 2022 @ 8:07am 
Hmm I do not but this is a good variation I should probably try to post. I can see how using a number input block to set the desired heading would be useful.
Nick Name 9 Dec, 2022 @ 7:09am 
Do you have a version that could take in a value from 0 - 360 for the desired heading, tryna make a ww2 torpedo for my u-boat
Mr. Leonard  [author] 20 May, 2022 @ 7:31am 
You can hook it up to a display so you can see what heading the microcontroller will be trying to hold. It is not required to use, just nice to be able to see what heading that is set.
TodayOnBottomGear 19 May, 2022 @ 9:52am 
Where I plug in current heading output degrees