Skip to content

Commit

Permalink
feat(docs): Add procedure for preparing DACS control station
Browse files Browse the repository at this point in the history
from SharePoint
  • Loading branch information
HELIOS committed Jun 19, 2024
1 parent 01ce89b commit 9782cf8
Show file tree
Hide file tree
Showing 7 changed files with 273 additions and 5 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
70 changes: 69 additions & 1 deletion src/dacs-sw/control-station-preparation/sections/notes.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,74 @@
\hline

\noteItem{
\textbf{REPLACE ME}
\textbf{Do not under any circumstances upgrade the Ubuntu version to a newer release} even if prompted!
The ROS version we use is not compatible with all Ubuntu versions.
}

\noteItem{
The \textbf{abort key for the UI is 'Esc'}.
This will immediately trigger the abort sequence corresponding to the current phase.
}

\noteItem{
To \textbf{stop a process} in the terminal: CTRL-C
\\
To \textbf{save a file}: CTRL-S
}

\noteItem{
Important files that might have to be changed:
\begin{itemize}
\item \textbf{/home/dacs/git/configuration-tests/PRO\_DACS-Configuration.xlsx}
\\
here you can change controllable actuators per phase and sensor abort thresholds, afterwards do catkin build again

\item \textbf{/home/dacs/git/user-interface/rosWebPage/ui/configure\_ui.py}
\\
here you can change anything related to the UI, in particular which config file is used (this is quite unreadable code so use CTRL-F to find things)
To apply changes run:
Cd /home/dacs/git/user-interface/rosWebPage/ui/
python3 configure\_ui.py

\item \textbf{/home/dacs/git/software-rpi4/state\_machine/src/:}
\\
In this folder you find the state machine list (list of phases) and sequences (watch out for the syntax if you change anything here)
Check which file is used in state\_machine.cpp
afterwards do catkin build again

\item \textbf{/home/dacs/git/software-rpi4/data\_acquisition/src/core/T7\_streaming.py}
\\
here you can change the streaming rate in case you get a Labjack buffer error or anything of that kind

\item \textbf{/home/dacs/git/software-rpi4/data\_acquisition/launch/test.launch}
\\
here you can change which ROS modules are started at roslaunch, might be useful to delete the throttling module if it gives any errors for example

\item \textbf{/home/dacs/git/software-rpi4/throttling\_control/src}
\\
In the setpoint.py, control.py and the core folder you can change the setting for the setpoints and the controller parameters.

\end{itemize}
}

\noteItem{
To see \textbf{error messages regarding the UI} in Google Chrome click on the three dots '…' in the upper right corner, then 'More Tools' and 'Developer Tools'.
Now you can see a few messages that might help find problems in the Configuration file for example
}

\noteItem{
To \textbf{monitor ROS messages} run in terminal:
\\
cd catkin\_ws
\\
source ./devel/setup.bash
\\
then some useful commands are:
\begin{itemize}
\item \texttt{rostopic list} (to see a list of topics)
\item \texttt{rostopic echo /'topicname'} (the name of the actuator topics are: 'actuator\_\#actuatorid' and of sensor topics: 'sensor\_\#sensorid'
\item \texttt{rostopic pub /throttling\_enabled dacs\_test/Control '{state: False}'} (to publish)
\item \texttt{rostopic hz /'topicname'} (to get frequency)
\end{itemize}
}
\end{tabularx}
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
% Operation description
\textbf{REPLACE ME}
Test the Mission Control Station with manual override box, UI, live graphing tools, and make sure necessary documents are updated.
This procedure is for using the system without the RaspberryPi.
190 changes: 188 additions & 2 deletions src/dacs-sw/control-station-preparation/sections/preparation.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,195 @@
\begin{tabularx}{\textwidth}{|>{\columncolor{tableColumnColor}}c|>{\columncolor{tableColumnColor}}c|>{\columncolor{tableColumnColor}}c|>{\columncolor{tableColumnColor}}c|X|}
\hline
\rowcolor{tableHeaderColor}
ID & CK 1 & CK 2 & CK 3 & Description \\ \hline
ID & CK 1 & CK 2 & CK 3 & Description \\ \hline

\arabic{tableCounter} & \checkbox & \checkbox & \checkbox &
\begin{minipage}[t]{\linewidth}
\textbf{Software Preparation}
\vspace{1mm} % Just slightly add vspace to prevent clipping into table border
\end{minipage}
\\ \hline

\procedureItem{
\hl{
Install System according to
}
\\
\hl{
PRO\_OP\_DACS\_004\_Installation-Control\_01
}
\\
\hl{
Do not launch yet (do not run start\_maria\_test)
}
}

\procedureItem{

\hl{Check config files (08\_DACS\textbackslash01\_Software\textbackslash07\_Configuration, especially}

\begin{itemize}
\item \hl{Update firing parameter specification}
\item \hl{Choose sequence and update activation times}
\item \hl{Update sensor thresholds}
\end{itemize}

}

\procedureItem{
Make sure the following files are downloaded from Sharepoint (08\_DACS\textbackslash01\_Software\textbackslash07\_Configuration) and saved to:
\begin{itemize}
\item /home/dacs/git/configuration\_tests/
\\
PRO\_DACS\_Configuration
\item /home/dacs/git/software-rpi4/state\_machine/src/
\\
state\_machine\_list.csv

\item /home/dacs/git/software-rpi4/state\_machine/src/
\\
state\_machine\_sequences.csv

\item /home/dacs/git/software-rpi4/throttling\_control/src/
\\
setpoint\_publisher.py

\item /home/dacs/git/software-rpi4/throttling\_control/src/
\\
control.py
\end{itemize}
}

\stepcounter{tableCounter}
\setcounter{rowCounter}{0} % Reset counter

\arabic{tableCounter} & \checkbox & \checkbox & \checkbox &
\begin{minipage}[t]{\linewidth}
\textbf{Launch System}
\vspace{1mm} % Just slightly add vspace to prevent clipping into table border
\end{minipage}
\\ \hline

\procedureItem{
\hl{Launch System according to}
\\
\hl{PRO\_OP\_DACS\_004\_Installation-Control\_01}
}

\stepcounter{tableCounter}
\setcounter{rowCounter}{0} % Reset counter

\arabic{tableCounter} & \checkbox & \checkbox & \checkbox &
\begin{minipage}[t]{\linewidth}
\textbf{Test System}
\vspace{1mm} % Just slightly add vspace to prevent clipping into table border
\end{minipage}
\\ \hline

\procedureItem{
\hl{
In the UI test the sequence of phases by going through them and check if the right actuators are controllable.
Trigger the sequences in Ignition and Firing phase (if control valves positions are changed during firing also check that the setpoint curve is right).
After that check the abort sequences by pressing ‘Ctrl-Space’ once in Fuel Filling, Oxidizer Filling and Firing
}
}

\procedureItem{
\hl{
Check the abort sequences by pressing ‘Ctrl-Space’ once in Fuel Filling, Oxidizer Filling and Firing
}
}
\procedureItem{
\hl{
With another person observing the valves or the Relay lights in the DACS compartment, check that immediately after toggling the switch in the UI the actuator is activated
}
}

\procedureItem{
\hl{
Check the functionaltity of the manual override box the status lights on the trailer by switching through all circuits
}
}

\procedureItem{
Check that plotjuggler plots keep up with the sensor values (let it run for 3-5 minutes)
}

\procedureItem{
Check that the UI keeps up with the sensor values:
\begin{itemize}
\item \texttt{cd catkin\_ws}
\item \texttt{source ./devel/setup.bash}
\item \texttt{rostopic echo /sensor\_prg\_p}
\end{itemize}


Compare whether rostopic echo measurement values change simultaneously with UI, also the cursor should not lag in the UI

In case of system delays:
\\
\texttt{/home/dacs/git/software-rpi4/data\_acquisition/src/core/T7(\_streaming).py}
\\
and in
\texttt{translate\_data\_2\_ros} change \texttt{j = j \% 40} to a higher number and restart
}

\procedureItem{
Ensure that the rosbags are being saved in catkin\_ws/src/rosbags

However, after checking delete them again
}

\procedureItem{
Press Ctrl-C in all running Terminal windows, make sure all changes are saved, then close all windows and shut down PCs
}


\stepcounter{tableCounter}
\setcounter{rowCounter}{0} % Reset counter

\arabic{tableCounter} & \checkbox & \checkbox & \checkbox &
\begin{minipage}[t]{\linewidth}
\textbf{Packing}
\vspace{1mm} % Just slightly add vspace to prevent clipping into table border
\end{minipage}
\\ \hline

\procedureItem{
Assemble the hardware as mentioned in sections B and C
}

\procedureItem{
\hl{
Place the three monitors with foil to protect the displays in the two big DACS boxes
}
}

\procedureItem{
\hl{
Put PC power cables, power strips, DP cables, mouses, keyboards and manual override box in the same boxes
}
\\
\includegraphics[width=0.5\textwidth]{assets/monitors-in-box.png}
}

\procedureItem{
DACS Box 1 with Monitor 1 \& 2, corresponding keyboard and mouse, 3 DP cables, and 3 monitor power cables
\\
\includegraphics[width=0.5\textwidth]{assets/other-monitor-in-box.png}
\\
DACS Box 2 with Surveillance/KiDAQ Monitor, corresponding keyboard and mouse 2 PC power adapters, manual override box, 2 power strips, extension cable
}

\procedureItem{
REPLACE ME
\hl{
Put the two PCs in the smaller DACS box together with the Ethernet switch, Ethernet cables and Switch‘s power cable
}
\\
\includegraphics[width=0.5\textwidth]{assets/smaller-dacs-box.png}
\\
\hl{
Smaller DACS box with 2 PCs, Ethernet Switch, Ethernet Switch power cable, 2 short Ethernet cables, replacment Etheret cable
}
}
\end{tabularx}
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,18 @@
\hline
\rowcolor{tableHeaderColor}
Check & Amount & Description \\ \hline
\checklistItem{X}{Replace Me}
\checklistItem{1}{Mission Control PC}
\checklistItem{1}{Windows PC with KiStudio Lab preinstalled (KiDAQ PC)}
\checklistItem{3}{Monitor}
\checklistItem{2}{Keyboard}
\checklistItem{2}{Mouse}
\checklistItem{2}{Wifi Adapter}
\checklistItem{2}{Power Adapter for PC}
\checklistItem{1}{Manual Override Box}
\checklistItem{2}{Power Strip}
\checklistItem{3}{DP Cable}
\checklistItem{1}{Phone with Hotspot \& Charger}
\checklistItem{1}{Ethernet cable on cable roll (connected to testbench)}
\checklistItem{1}{PRO Ethernet Switch with power cable}
\checklistItem{2}{Short Ethernet cable}
\end{tabularx}

0 comments on commit 9782cf8

Please sign in to comment.