Skip to content

Commit

Permalink
new post (#5)
Browse files Browse the repository at this point in the history
  • Loading branch information
PennyHow authored May 13, 2024
1 parent d8e8884 commit bf4e05e
Show file tree
Hide file tree
Showing 3 changed files with 152 additions and 24 deletions.
2 changes: 1 addition & 1 deletion _posts/2022-12-06-retrieving-tx-messages.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ You will need certain files with pieces of account information to fetch `L0 TX`
Run the script from the command line as follows, exchanging each variable input for your chosen file names and directories, and the transmission messages should begin to appear in the output directory:

```
getL0tx -a accounts.ini -p credentials.ini -c config/ -f payload_formats.csv -t payload_types.csv -u last_aws_uid.ini -o out_dir/
get_l0tx -a accounts.ini -p credentials.ini -c config/ -f payload_formats.csv -t payload_types.csv -u last_aws_uid.ini -o out_dir/
```

The output files will be `.txt` formatting, comma delimited, with one message per line.
Expand Down
26 changes: 3 additions & 23 deletions _posts/2023-03-03-mounting-glaciologi-drive-for-rsyncing.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ It is likely that you will be prompted for your username and password. Please re
Next, we can remount the `glaciologi` drive as so:

```
$ sudo mount -rw -t cifs -o username=<USERNAME>,uid=<UID>,gid=<GID> //172.23.254.160/glaciologi /media/aws/glaciologi
$ sudo mount -rw -t cifs -o username=<USERNAME>,uid=<UID>,gid=<GID> //#IP_ADDRESS/glaciologi /media/aws/glaciologi
```

Where `<USERNAME>` is your `glacio01` username, and `<UID>` and `<GID>` are the identifiers associated with your username and your group. If you do not know the `<UID>` and `<GID>` then you can look them up with this command:
Expand Down Expand Up @@ -75,40 +75,21 @@ $ ssh glacio01
$ pho@glacio01's password:
Welcome to Ubuntu 18.04.6 LTS (GNU/Linux 4.15.0-208-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Wed Apr 12 13:39:29 CEST 2023
System load: 0.16 Processes: 561
Usage of /: 54.4% of 195.80GB Users logged in: 1
Memory usage: 1% IP address for ens192: 172.23.247.131
Swap usage: 0% IP address for docker0: 172.17.0.1
48 updates can be applied immediately.
To see these additional updates run: apt list --upgradable
Last login: Mon Mar 27 10:30:08 2023 from 10.10.18.171
```

- Check your user id

```
$ id
uid=1009(pho) gid=1009(pho) groups=1009(pho),27(sudo)
```

- Re-mount the glaciologi drive

```
$ sudo mount -rw -t cifs -o username=pho,uid=1009,gid=1009 //172.23.254.160/glaciologi /media/aws/glaciologi
$ sudo mount -rw -t cifs -o username=pho,uid=#ID,gid=#ID //172.23.254.160/glaciologi /media/aws/glaciologi
[sudo] password for pho:
Password for pho@//172.23.254.160/glaciologi: ****************
Password for pho@//#IP_ADDRESS/glaciologi: ****************
```

- Check the re-mount has worked by searching for files
Expand All @@ -119,7 +100,6 @@ $ ls -l
total 180085
drwxr-xr-x 2 pho pho 0 Dec 5 2017 '10971 - AWSsalg'
-rwxr-xr-x 1 pho pho 154089 May 17 2016 13-GEUS-SVALI_partner_finance_report2016.xlsx
-rwxr-xr-x 1 pho pho 40 May 3 2019 437BE3F4A354
drwxr-xr-x 2 pho pho 0 Oct 23 2019 79North
drwxr-xr-x 2 pho pho 0 Nov 18 2013 aerial_150K
Expand Down
148 changes: 148 additions & 0 deletions _posts/2024-05-13-aws-data-checklist-whilst-in-the-field.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
---
title: "AWS data checklist whilst in the field"
author: Penelope How
date: 2024-05-13 00:00
classes: wide
categories:
- Guides
tags:
- aws
- promice
---

# For the field teams

## 1. Tasks before entering the field

- Check the current status of the automated weather station (AWS) site that you are visiting. If you do not have adequate internet to look at the most recent station data then contact the data scientist team who can check for you. The following locations are where you can check station data (in order of preference):
* [Our thredds server](https://thredds.geus.dk/) for Level 3 near-real-time data
* [The promice website](https://promice.org/weather-stations/) for Level 0 near-real-time data
* [Our Level 0 repository](https://geusgitlab.geus.dk/glaciology-and-climate/promice/aws-l0) for Level 0 near-real-time data

- Turn on your GPS tracking and share the link with the data scientist team. The data scientist team can then see which station you are visiting each day without having direct communication


## 2. Urgent tasks in the field

- **You must tell a member of the data scientist team immediately if a logger box has been switched** (i.e. the IMEI modem number associated with the station's Iridium transmissions has changed). This is because others rely on our near-real-time transmissions and this relies on keeping all IMEI modem numbers up-to-date


## 3. Tasks to do when back in the office

- Report the changed sensors on an AWS to the data scientist team. This should be reported on the AWS maintenance sheet anyway, so hopefully it is not any extra work. Sensors of particular interest are:
* Radiometer - we especially need to know the serial number of the new radiometer, so we can update the associated radiometer calibration parameters for our data processing
* Pressure Transducer (PTA) - we especially need to know if a new PTA has been installed so that we can update the associated coefficients for data processing

- Report if there have been any other changes to the station, such as:
* Location - if the station was moved then we would like to know so that we can cross-check it in the station's GPS readings
* Boom positioning - i.e. if the station's boom direction has been drastically changed
* Upgrade - for example, if a station has been upgraded from a version 2 to version 3 station

- Transfer any raw data collected from the field to the data scientist team



# For the data scientist team
## Data scientist personnel

- Penelope How, [[email protected]](mailto:[email protected])
- Mads Christian Lund, [[email protected]]([email protected])
- Robert Fausto, [[email protected]]([email protected])
- Baptiste Vandecrux, [[email protected]]([email protected])


## Updating data configuration for a station

Configurations for all stations can be found in [our Level 0 repository](https://geusgitlab.geus.dk/glaciology-and-climate/promice/aws-l0).

The config `.toml` files in the `tx` directory are needed to fetch near-real-time messages from a station. Most of the contents of each of these `.toml` files concerns the `L0` to `L3` processing parameters.

To make changes to these files, make a new branch in the repo and submit the modifications as a merge request. The repo has checks implemented to ensure that the new changes are compatible for processing, and another member of the data scientist team should assess the changes before merging.

### Switching IMEI modems

The `modem` variable is needed for the `L0 TX` retrieval because:

- It defines the `imei` modem number, which is used to identify `L0 TX` messages from the specified station
- It defines the active period that the modem was at the specified station (this is in cases where modems are swapped between stations, or stations are reconfigured)

The `modem` variable is set at the beginning of a `tx` config `toml` file as follows:

```
modem = [[imei,start,end], [imei,start,end], [imei,start,end]...]
```

Where each `[imei,start,end]` entry designates the active period of a specific modem. In cases where the modem is active up until present, the `end` variable can be disregarded. So a standard modem that has been active for the entire period of a station's occupancy would look like this:

```
# Modem at active station example
modem = [['123456789', '2021-04-01 00:00:00']]
```

So modem `123456789` has been active from `2021-04-01 00:00:00` and remains active now, in this example. In cases where a modem has been switched out, we can add an entry into the `modem` variable:

```
# Modem switch example
modem = [['1234567890', '2021-04-01 00:00:00', '2021-06-01 00:00:00'],
['2345678901', '2021-06-02 00:00:00']]
# Modem multiple switches example
modem = [['1234567890', '2021-04-01 00:00:00', '2021-06-01 00:00:00'],
['2345678901', '2021-06-02 00:00:00', '2022-03-15 00:00:00'],
['3456789012', '2022-03-16 00:00:00']
```

We can also use this variable to schedule breaks in the `L0 TX` message transmissions, for instance, when we have a station visit and know that maintenance will produce invalid measurements:

```
# Station visit example
modem = [['1234567890', '2021-04-01 00:00:00', '2021-06-01 00:00:00'],
['1234567890', '2021-06-03 00:00:00']]
```

## Updating sensor coefficients

Sensor coefficients can be updated for each `raw`/`tx` data file associated with a config `toml` file.

The radiometer calibration coefficients are defined here with parameters:

- `dsr_eng_coef`: Downwelling shortwave coefficient
- `usr_eng_coef`: Upwelling shortwave coefficient
- `dlr_eng_coef`: Downweling longwave coefficient
- `ulr_eng_coef`: Upwelling longwave coefficient

All radiometers are calibrated before they leave for the field, and Glaciolab should have all the documentation for the calibration coefficients.

PTA coefficients are defined here with parameters:

- `pt_z_coef`: PTA pressure coefficient
- `pt_z_p_coef`: PTA atmospheric pressure coefficient
- `pt_z_factor`: PTA factor
- `pt_antifreeze`: PTA anti-freeze percentage (for fluid density correction)

Here is an example of these parameters defined at NUK_Uv3:

```
['NUK_Uv3_300534063817730_4.txt']
format = 'TX'
skiprows = 0
latitude = 64.51
longitude = 49.26
hygroclip_t_offset = 0
dsr_eng_coef = 13.79
usr_eng_coef = 14.71
dlr_eng_coef = 9.79
ulr_eng_coef = 9.92
pt_z_coef = 0.41073
pt_z_p_coef = 1008.4
pt_z_factor = 2.5
pt_antifreeze = 50
boom_azimuth = 0
tilt_y_factor = -1 # New inclinometer, y direction is opposite than the old PROMICE v2 inclinometer.
columns = ["time", "rec", "p_u", "t_u", "rh_u", "wspd_u", "wdir_u", "dsr",
"usr", "dlr", "ulr", "t_rad", "z_boom_u", "z_stake", "z_pt",
"t_i_1", "t_i_2", "t_i_3", "t_i_4", "t_i_5", "t_i_6", "t_i_7", "t_i_8",
"tilt_x", "tilt_y", "rot", "precip_u", "gps_time", "gps_lat", "gps_lon",
"gps_alt", "gps_hdop", "fan_dc_u", "batt_v", "p_i",
"t_i","rh_i","wspd_i","wdir_i","msg_i"]
```

0 comments on commit bf4e05e

Please sign in to comment.