FreeCAD Logo FreeCAD 1.0
  • Английский Африкаанс Арабский Белорусский Каталанский Чешский Немецкий Греческий Испанский Испанский Баскский Финский Филиппинский Французский Галисийский Хорватский Венгерский Индонезийский Итальянский Японский Кабильский Корейский Литовский Нидерландский Норвежская букмол Польский Португальский Португальский Румынский Русский Словацкий Словенский Сербский Шведский Турецкий Украинский Валенсианский Вьетнамский Китайский Китайский
  • Возможности
  • Скачать
  • Блог
  • Документация
    Индекс документации Приступая к работе Пользовательская документация Руководство по FreeCAD Документация верстаков Документация по кодированию на Python Документация по коду C++ Уроки Часто задаваемые вопросы Политика конфиденциальности О программе FreeCAD
  • Внести вклад
    Как помочь Sponsor Сообщить об ошибке Сделать запрос Задачи и финансирование Руководство по участию в разработке Руководство для разработчиков Переводы
  • Сообщество
    Кодекс поведения Форум The FPA GitHub GitLab Codeberg Mastodon Matrix IRC IRC via Webchat Gitter Discord Reddit Twitter Facebook LinkedIn Календарь
  • ♥ Donate

Donate

$
Информация о SEPA
Пожалуйста, настройте банковский перевод SEPA:
Beneficiary: The FreeCAD project association
IBAN: BE04 0019 2896 4531
BIC/SWIFT: GEBABEBBXXX
Банковское агентство: BNP Paribas Fortis
Адрес: Rue de la Station 64, 1360 Perwez, Belgium

While Stripe doesn't support monthly donations, you can still become a sponsor! Simply make a one-time donation equivalent to 12 months of support, and you'll gain access to the corresponding sponsoring tier. It's an easy and flexible way to contribute.

If you are not sure or not able to commit to a regular donation, but still want to help the project, you can do a one-time donation, of any amount.

Choose freely the amount you wish to donate one time only.

You can support FreeCAD by sponsoring it as an individual or organization through various platforms. Sponsorship provides a steady income for developers, allowing the FPA to plan ahead and enabling greater investment in FreeCAD. To encourage sponsorship, we offer different tiers, and unless you choose to remain anonymous, your name or company logo will be featured on our website accordingly.

from 1 USD / 1 EUR per month. You will not have your name displayed here, but you will have helped the project a lot anyway. Together, normal sponsors maintain the project on its feet as much as the bigger sponsors.

from 25 USD / 25 EUR per month. Your name or company name is displayed on this page.

from 100 USD / 100 EUR per month. Your name or company name is displayed on this page, with a link to your website, and a one-line description text.

from 200 USD / 200 EUR per month. Your name or company name and logo displayed on this page, with a link to your website and a custom description text. Companies that have helped FreeCAD early on also appear under Gold sponsors.

Instead of donating each month, you might find it more comfortable to make a one-time donation that, when divided by twelve, would give you right to enter a sponsoring tier. Don't hesitate to do so!

Choose freely the amount you wish to donate each month.

Please inform your forum name or twitter handle as a notein your transfer, or reach to us, so we can give you proper credits!

Руководство
Тема
Ship Workbench
Уровень
Beginner
Время для завершения
Авторы
FreeCAD версия
Примеры файлов
Смотрите также
None

Обзор

Прежде чем начинать урок, пожалуйста выполните первую часть.

Learn more about the Ship workbench from it's dedicated wiki page: Ship Workbench

Introduction

In this tutorial we will work with weights and tanks in order to compute GZ curve, the most important hydrostatic stability parameter. GZ is the static moment generated when the ship takes roll angle, of course, since the GZ arm is positive, the ship has a positive moment, and will try to recover upright position, but when GZ turns on negative numbers ship has not anymore stability, reaching a critical situation.

IMO (International Maritime Organization) set following criteria:

  • GM >= 0.15 m. GM (metacentric height) is the initial tangent of the GZ curve.
  • Maximum GZ value must be placed over 30 degrees of roll angle.
  • With 30 degrees roll angle, GZ value must be 0.2 m at least.
  • Area involved by GZ curve up to 40 degrees of roll angle must be at least 0.090 m · rad.
  • Area involved by GZ curve up to 30 degrees of roll angle must be at least 0.055 m · rad.
  • Area involved by GZ curve from 30 to 40 degrees of roll angle must be at least 0.030 m · rad.

In this tutorial we will set weights and tanks for our series 60 ship, in a simulated situation.

Ship weights

In order to can compute GZ curve we need to know ship weights, and their position at each roll angle, so weights will be divided in two categories:

  • Fixed weights, that are fully linked to ship movements.
  • Tanks, where fluid shape changes with the angle, needing center of gravity computation at each position.

The Ship workbench provides two different tools to generate each instance.

Weights definition tool icon.
Weights definition tool icon.
Weights definition tool icon.

Weights definition tool can be used to set first category of weights. When you launch the tool for first time (with ship instance selected), the Ship workbench initializes ship weights with Lightweight ship (equal to ship displacement) that is placed on the ship geometry center of gravity X coordinate, and at design draft height. Usually there are at least 2 relevant weights:

  • Structure.
  • Main engine (or several of them).

So we will change it. Double-click over each cell we can edit the value, setting weights:

  • Structure, 15000 kg, (-0.1, 0, 1.25) m
  • Starboard engine, 5000 kg, (-6.5, -0.65, 0.5) m
  • Port side engine, 5000 kg, (-6.5, 0.65, 0.5) m
  • Emergency engine, 2500 kg, (0.2, 0, 2.5) m
Weights definition 3D preview.
Weights definition 3D preview.
Weights definition 3D preview.

Weights position are shown in the 3D view. Note: the annotations will be removed when the tool is closed. When you press Accept weights will be stored in your ship instance.

Tanks

Tanks must be created on top of solid geometry, as the ship instance, so first step is create two bow tanks (one per ship side) solid geometries that we will consider (usually ships have a lot of tanks for fuel, fresh water, salt water, load, etc).

Geometry generation

In order to generate tanks we load Part module, and create a box solid.

We need to edit the box, so we select it at Attributes and tags tree, and change from view to data tab. Expand Placement, and into them Position, and set x to 1.5, and z to -1. We want to change box length too changing it for 5.0 (note that units can be in mm, don't take care about this).

Tank geometry will be common part of created box and ship geometry, so we can hide Ship instance, and show s60_IowaUniversity geometry. Selecting box and s60_IowaUniversity we can use Common operation generating our starboard tank geometry.

Generated tank geometry.
Generated tank geometry.
Generated tank geometry.

We can perform port side tank selecting our starboard geometry and executing mirror tool, selecting XZ as mirror plane.

In order to convert geometry into a ussual solid shape our tanks, and recover our s60_IowaUniversity geometry, we can load Draft module, and with starboard tank geometry selected execute Upgrade, and repeat with port side tank geometry. We can rename geometries as:

  • StarboardTankGeom
  • PortTankGeom

We can delete created Box, that we don't need anymore.

Tank intances generation

If reload FreeCAD-Ship module another time, we can find tank instances generator tool.

Tank instance generation tool icon.
Tank instance generation tool icon.
Tank instance generation tool icon.

Now we can select StarboardTankGeom and execute tank instance generation tool, where some data must be provided. We will set 40% of filling level, and 925 kg/mm3 (fuel approach). When Accept is clicked a new tank instance called Tank is generated. We can rename it as StarboardTank, and hide StarboardTankGeom.

We can repeat the same process in order to generate PortTank.

View of generated weights.
View of generated weights.
View of generated weights.

Figure shown our ship result that we will compute.

GZ curve computation

The Ship workbench provide a tool to easily compute a GZ curve.

GZ curve computation tool icon.
GZ curve computation tool icon.
GZ curve computation tool icon.

With Ship instance selected, we can run the tool. The first thing that we can see at opened dialog is a list with all tank instances found at active document. We want to use both of them, so we click over the tanks that are remarked with a different background.

In order to know the resultant ship displacement and draft we can press Update displacement and draft, taking some time for the computation. We receive following data:

  • Displacement = 37505.5 kg
  • Draft = 0.818664 m

So we are in a unloaded situation, where draft are sightly lower than design draft. Usually lower drafts imply lower ship stability, the draft depends on loading condition, so if we really expect than ship can be operated in this loading condition we can consider implement ballast tanks.

We can also automatically compute ship trim, operation that can take around one minute, retrieving that our ship have 0.95 degrees of trim angle (positive by stern). In this example we will work without trim angle (0 degrees).

Tool request roll angles considered too. In this case we want to know all ship behaviour, so we can set:

  • 0 degrees starting roll angle.
  • 180 degrees ending roll angle.
  • 46 points. One for each 2 degrees. GZ computation can take some time, so take care about the number of points requested.

When we press Accept tool starts the computation. If you run FreeCAD from the terminal you can see work progress. In a couple of seconds we will receive GZ curve.

This tool use pyxplot and ghostscript too. You can see where gz.dat output file has been placed at the report view (View/Views/Report view), and load it with datasheet software (for example libreOffice). Nearby data file several auxiliary files has been created too:

  • gz.dat: Computed GZ curve data.
  • gz.pyxplot: pyxplot layout in order to plot the curve.
  • gz.eps: EPS image version.
  • gz.png: PNG image version.

This files will be overwritten if you executes the tool another time.

Results

Resultant GZ curve.
Resultant GZ curve.
Resultant GZ curve.

GZ maximum value is placed over 30 degrees (45 degrees), getting 0.25 m at 30 degrees (0.2 m is the minimum). Up to 30 degrees the area below GZ curve is 0.065 m·rad, up to 40 degrees we have 0.092 m·rad, being the area between 30 and 40 degrees of 0.027 m·rad. So our ship don't meets the IMO requirements. The solution is place ballast tanks.

At the other hand, the ship in this bad condition has positive GZ values up to 95 degrees roll angle, but has not been enough for IMO stability requirements, showing the hard criteria imposed about this item.

Of course this example is not real (first for all fuel tanks cannot be placed in the double bottom structure, or using hull side as structure), but is a good example in order to learn to use Ship Workbench.

Эта страница получена от https://wiki.freecad.org/FreeCAD-Ship_s60_tutorial_(II)

Свяжитесь с нами!
Forum GitHub Mastodon Matrix IRC Gitter.im Discord Reddit Twitter Facebook LinkedIn

©Команда FreeCAD. Авторы изображений (сверху вниз): ppemawm, r-frank, epileftric, regis, regis, rider_mortagnais, bejant.

Этот проект поддерживается: , KiCad Services Corp. и другие спонсоры

GitHubУлучшить эту страницу на GitHub