Project: 901101 Ocean Imaging
PI: David Caress
Designer: Eric Martin
DETAILS PENDINGDETAIL PENDING. How fast and how slow does the system need to go? There are two operational requirements:
Let's look at each one:
To expand this operational scenario informs the design in such a way that the system must be able to sense and tilt the array fast enough that at normal forward survey velocities it can see and register the worst case problem: a flat bottom approaching a vertical wall.
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
# Assuming the vehicle is moving at its usual survey speed
speed_forward = 30 #cm/s
altitude = 300 #cm
# Also assuming we are using the DVL Beams as the first warning and bottom tracking solution
theta_forward = 30 #degrees
# What are the ranges of speeds we are interested in?
speed_tilt = np.linspace(5,20) #degrees/s
# How far out are we seeing as we approach and tilt up at maximum speed
look_ahead_distance = altitude * np.tan(np.deg2rad(theta_forward))
look_ahead_distance
# So now how much time is there to stop from there
time_to_stop = look_ahead_distance / speed_forward
speed_lim = [5,20]
time_lim = [time_to_stop, time_to_stop]
time_to_stop
# So how long to tilt up to face that?
time_to_face = 90 / speed_tilt
fig = plt.figure(figsize=(10,3))
ax = fig.add_subplot(111)
ax.plot(speed_tilt, time_to_face, label='Tilt Response')
ax.plot(speed_lim, time_lim, label='Time before collision')
plt.xlabel('Tilt Speed (deg/s)')
plt.ylabel('Time of Response (s)')
plt.legend();
The slowest data aggregation tool along track is the multibeam, which usually surveys with 5-cm cross-track spacing at a scan rate of 5-Hz, let's understand how slow we need to tilt at a steady rate to acheive the same along-track spacing, assuming the ROV is stopped and we are surveying a feature with 3-m curved profile.
# Determine the scan speed for this arc to move through 5-cm at 5-Hz
along_track_resolution = 5 #cm
ping_rate = 5 #hertz
arc_length_bt_pings = along_track_resolution
theta = np.rad2deg(arc_length_bt_pings/altitude) # degrees of motion in subtended arc
max_tilt_speed = theta *ping_rate # degrees/sec
max_tilt_speed # max tilt speed for multibeam to have 5-cm along-track resolution
The below response curve helps establish the upper response of the amplifier and any DAC's in the system:

If we are using the Moog G123-825 servo amplifier, its corner filter on the input is set in steps of 7, 16, 34, 72, & 723 Hz, ±10% So we are looking for a PLC module that can supply either 4-20mA drive or ±10V and can update around 100Hz.
[CLICK PLCs] (https://www.automationdirect.com/clickplcs)
WAGO
# Calculate the full swing
(((16)*2/0.124)/1000)**-1
Looks like all of the available solutions are rate limited and likely just expensive enough to warrant a custom design. Let's look into that in the next page: