Project

General

Profile

Installation » History » Version 18

Rafael Bailon-Ruiz, 2020-11-16 17:20

1 1 Rafael Bailon-Ruiz
h1. Installation
2
3 18 Rafael Bailon-Ruiz
This is a quick tutorial on how to install CAMS on your computer. Instructions are different depending on your needs: *If you are using ubuntu 20.04 proceed with the [[Installation#One-step install|one-step install]]. If you are a developper that wants to control the setup process, follow the [[Installation#Advanced install|Advanced install]] instructions.*
4 1 Rafael Bailon-Ruiz
5 18 Rafael Bailon-Ruiz
In any case, CAMS server requires a PC running a recent GNU/Linux operating system, preferably 20.04. Windows and MacOS are not supported. On the contrary, access to the graphical user interface is possible from any device running a modern web browser.
6 1 Rafael Bailon-Ruiz
7 5 Rafael Bailon-Ruiz
{{toc}}
8 1 Rafael Bailon-Ruiz
9 18 Rafael Bailon-Ruiz
h2. One-step install
10 1 Rafael Bailon-Ruiz
11 18 Rafael Bailon-Ruiz
Download the script from the url below to your home directory:
12 1 Rafael Bailon-Ruiz
13 18 Rafael Bailon-Ruiz
*<pre>
14
https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_utils/revisions/master/raw/cams_user_install.sh
15
</pre>*
16 1 Rafael Bailon-Ruiz
17 18 Rafael Bailon-Ruiz
Open a terminal and run:
18 1 Rafael Bailon-Ruiz
19 18 Rafael Bailon-Ruiz
*<pre><code class="shell">
20
chmod +x cams_user_install.sh
21
./cams_user_install.sh
22
</code></pre>*
23 2 Rafael Bailon-Ruiz
24 18 Rafael Bailon-Ruiz
h2. Advanced install
25 2 Rafael Bailon-Ruiz
26
h3. System requirements
27 1 Rafael Bailon-Ruiz
28 2 Rafael Bailon-Ruiz
The main programming language is **Python 3.5**. "Official support for Python 2.7 ending by the beginning of 2020":https://pythonclock.org/, no development efforts were made to support Python 2.7.
29
30
Most of development and testing where made on "Ubuntu 16.04 LTS Xenial Xerus":http://releases.ubuntu.com/16.04/ on which Python 3.5 is the default Python version.
31
32
All server side applications should work on a Unix-based system provided it supports Python 3.5 or later. Compatibility with Microsoft Windows has not been tested.
33
34
The client side application is web-based and should work on a modern web browser. (Only tested with Mozilla Firefox and Safari).
35
36 15 Rafael Bailon-Ruiz
p{border: solid 1px #00008B; padding: 1em; margin: 1em; background: #EEF}. %{color:darkblue; font-weight: bold; font-size: large}Note:% *Check https://redmine.laas.fr/my/account to confirm that your ssh key is correctly set up ! *Otherwise you will need to replace all the <code class="shell">git clone ssh://git@redmine.laas.fr/ . . .</code> urls below by <code class="shell">git://redmine.laas.fr/ . . .</code> but you will not be able to make commits*
37
38 1 Rafael Bailon-Ruiz
h3. Paparazzi framework
39
40
Make sure that curl is installed:
41
<pre><code class="shell">
42 6 Rafael Bailon-Ruiz
apt install curl
43 1 Rafael Bailon-Ruiz
</code></pre>
44
45
h4. System dependencies (for Ubuntu 16.04)
46
47
<pre><code class="shell">
48
add-apt-repository ppa:team-gcc-arm-embedded/ppa
49 6 Rafael Bailon-Ruiz
apt update
50
apt install gcc-arm-linux-gnueabi gcc-arm-none-eabi
51 1 Rafael Bailon-Ruiz
</code></pre>
52
53
<pre><code class="shell">
54
add-apt-repository ppa:paparazzi-uav/ppa
55 6 Rafael Bailon-Ruiz
apt update
56
apt install paparazzi-dev paparazzi-jsbsim
57 1 Rafael Bailon-Ruiz
</code></pre>
58
59
h4. System dependencies (for Ubuntu 18.04)
60
61
<pre><code class="shell">
62 6 Rafael Bailon-Ruiz
apt install gcc-arm-none-eabi
63 1 Rafael Bailon-Ruiz
</code></pre>
64
65
<pre><code class="shell">
66 6 Rafael Bailon-Ruiz
add-apt-repository ppa:paparazzi-uav/ppa
67
apt update
68 1 Rafael Bailon-Ruiz
apt install paparazzi-dev paparazzi-jsbsim
69
</code></pre>
70
71
h4. Repository
72 11 Rafael Bailon-Ruiz
<pre><code class="shell">
73 1 Rafael Bailon-Ruiz
git clone -b laas_wip ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/paparazzi.git paparazzi
74
cd paparazzi
75
make
76
</code></pre>
77 2 Rafael Bailon-Ruiz
78 18 Rafael Bailon-Ruiz
CAMS needs the environment variables PAPARAZZI_HOME and PAPARAZZI_SRC to be set to the root paparazzi folder (where you cloned it). Add these lines to your .bashrc, replacing "paparazzi_path" to where you cloned paparazzi repository.
79 1 Rafael Bailon-Ruiz
80
<pre><code class="shell">
81
export PAPARAZZI_HOME="paparazzi_path"
82
export PAPARAZZI_SRC="paparazzi_path"
83
</code></pre>
84 2 Rafael Bailon-Ruiz
85 1 Rafael Bailon-Ruiz
Once Paparazzi installed, launch ./paparazzi. In the paparazzi center, build every aircraft you need to use by selecting an item in the _A/C_ menu and then clicking on the _build_ button.
86 2 Rafael Bailon-Ruiz
87 1 Rafael Bailon-Ruiz
h3. CAMS
88
89
Install pip3 and update it:
90 6 Rafael Bailon-Ruiz
<pre><code class="shell">
91 1 Rafael Bailon-Ruiz
apt install python3-pip
92
pip3 install --user --upgrade pip
93
</code></pre>
94
95
If you want to update it for all users:
96
<pre><code class="shell">
97
pip3 install --upgrade pip
98
</code></pre>
99 12 Rafael Bailon-Ruiz
100 1 Rafael Bailon-Ruiz
Clone and install the core packages (in developer mode with the -e pip3 option):
101
102
"nephelae_base":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_base.
103 14 Rafael Bailon-Ruiz
<pre><code class="shell">
104 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_base.git nephelae_base
105
cd nephelae_base
106
pip3 install --user -e .
107
</code></pre>
108
109
"nephelae_mesonh":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_mesonh.
110 14 Rafael Bailon-Ruiz
<pre><code class="shell">
111 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_mesonh.git nephelae_mesonh
112
cd nephelae_mesonh
113
pip3 install --user -e .
114
</code></pre>
115
116
"nephelae_paparazzi":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_paparazzi.
117 14 Rafael Bailon-Ruiz
<pre><code class="shell">
118 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_paparazzi.git nephelae_paparazzi
119
cd nephelae_paparazzi
120
pip3 install --user -e .
121
</code></pre>
122 10 Rafael Bailon-Ruiz
123
"nephelae_planner":https://redmine.laas.fr/projects/nephelae-planner/repository/nephelae_planner.
124 14 Rafael Bailon-Ruiz
<pre><code class="shell">
125 10 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_planner.git nephelae_planner
126
cd nephelae_planner
127
pip3 install --user -e .
128
</code></pre>
129 1 Rafael Bailon-Ruiz
130
Make sure that redis is installed:
131 6 Rafael Bailon-Ruiz
<pre><code class="shell">
132 1 Rafael Bailon-Ruiz
apt install redis-server
133
</code></pre>
134
135
Clone and install the "nephelae_gui":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_gui package in developer mode:
136 14 Rafael Bailon-Ruiz
<pre><code class="shell">
137 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_gui.git nephelae_gui
138 17 Rafael Bailon-Ruiz
cd nephelae_gui
139 1 Rafael Bailon-Ruiz
make install
140
</code></pre>
141
142
To check the installation, launch the server:
143
144
<pre><code class="shell">
145
make demo
146 17 Rafael Bailon-Ruiz
</code></pre>
147
148 1 Rafael Bailon-Ruiz
p{border: solid 1px #FF8C00; padding: 1em; margin: 1em; background: #FEE}. %{color:darkorange; font-weight: bold; font-size: large}Warning:% (16/11/2020) <code class="shell">make demo</code> does not work  !
149
150
This will (hopefully) start the replay of a UAV flight.
151 2 Rafael Bailon-Ruiz
152 1 Rafael Bailon-Ruiz
You should now be able connect to the graphical user interface with your web browser on "http://0.0.0.0:8000/":http://0.0.0.0:8000/.