diff options
author | Jonas Smedegaard <dr@jones.dk> | 2025-04-19 08:01:31 +0200 |
---|---|---|
committer | Jonas Smedegaard <dr@jones.dk> | 2025-04-19 08:01:31 +0200 |
commit | 9a51836f416d4bdbd28e085e51bc0dfa6d83d89b (patch) | |
tree | acad57dcfbd8d83309e393cd536e8eb5751d705c /report.qmd | |
parent | d4969a52a547a9c5f94033509f0b83bd5666c470 (diff) |
update report content
Diffstat (limited to 'report.qmd')
-rw-r--r-- | report.qmd | 99 |
1 files changed, 56 insertions, 43 deletions
@@ -39,30 +39,16 @@ is illustration and demostration purposes. *TODO: come back and write about each step, OUR THREE REQUIRED COMPONENTS,and a conclusion* -## Copyright and licensing - -*FIXME: this section cannot be a subsection of Abstract: -Abstract must be a standalone section -Suggested alternative location is in section -"Project Planning and theoretical framework"* - -To encourage collaboration and stimulate a circular gift economy -as introduced by @Mikkelsen2000, -this project is copyleft licensed: -Code parts are licensed -under the GNU Public Licence version 3 or newer, -and non-code parts are licensed -under the Creative Commons crediting share-alike 4.0. # Introduction - amal In Poland, several waterworks use biomonitoring systems that rely on freshwater mussels to detect water contamination by measuring and analysing the mussels' gaping behavior -[@FerreiraRodriguez2023, p. 3732] +[@FerreiraRodriguez2023 p. 3732] Our project aims to simulate a similar system. We will be using Arduino-based hardware and software to do so, -and have additionally made a P5 program to simulate night and day, +and have additionally made a p5.js program to simulate night and day, which influences the pseudomussels' behaviour (reaction). We have defined a research question to work around: @@ -125,13 +111,14 @@ or perhaps we wanted to prototype a fitting reaction that leads to a dramatic output? Should the prototype be useful or spark reflection? is it merely a state of the art prototype? Concurrently, we learned about the roles -artefacts can play in the research process, +artefacts can play in a research process, and used that framework to help define the aim of our project. The following framework, as introduced in @Wensveen2014, explains how prototypes can serve different purposes depending on the type of knowledge a project aims to produce. -A *role* consists of characteristics, that helps guide the design process +A "role" consists of characteristics +that helps guide the design process and scope of the prototype. There are four roles to choose from, and we chose to work from the perspective of role number three, @@ -140,30 +127,38 @@ and tool for critical reflection, in both a physical and abstract sense [@Wensveen2014 p. 8-9]. -Next we each did early prototyping and pseudocoding -for about three weeks. -During this phase, we worked on the sensor setups -and on the logic behind the voting mechanism +Next we each had an early prototyping and pseudocoding phase, +were we worked on the sensor behaviour, +on the logic behind the voting mechanism and the possible communication-methods between them. -Our project group has received a brief introduction to APIs -during a lecture session, +Our project group has received a brief introduction +to APIs during a lecture session and through additional notes on the topic, -that are available on the lecture slides for week 5. -From these notes, we learned -that API works as a standardized "messenger", -that allows different software applications to communicate -through defined rules and protocols. -API enables seamless integration between the systems. - -We decided to use a combination of bluetooth and API, -to connect the sensor-data to the voting program. -Bluetooth handles the connection -between the sensors and our computer/phone, -whilst the API is being used to send/retrieve data -and trigger an output. -A further explanation of this process -will be displayed in @sec-user-guide. +that are available on the lecture slides for week 5, +but it is explicitly stated as "Not a part of the curicculum". +Hence we have searched for external sources on API knowledge. + +We decided to implement a loosely coupled network design +as in @GeeksForGeeks2024, +to connect the different components +and allow each of them to operate independently, +whilst still being able to exchange data. +We chose to use the BLE Beacon API -- +specifically the Eddystone protocol @accentSystems -- +and focused on TLM (telementry) frame type. +The original purpose of of TLM +is to transmit temperature and battery level, +but we repurposed it +to make the temperature show the gape angle data instead. +The sensors appear in the debug interface +of one of our android phones, +indicating that any system supporting this API +could interact with our sensors. + +*FIXME: add web link for @accentSystems above +(that can be transformed into a biblatex reference) +https://accent-systems.com/support/faq/what-is-eddystone/* ## Detecting stressful mussel behavior @@ -200,6 +195,24 @@ is to collect data at a sample rate of 0.5 seconds, i.e. 2 hZ, and convert that into gape angle per second (CHIGA) to then monitor gape movement instead of gape position. +Additionally, we wish to refer to the bachelor thesis @GarciaHuertes2016 +that covers some of the same themes as our report +but are prototyping with real mussels. +The report covers mussel behaviour and stress, +the SYMBIO system and biomonitoring more in depth, +and has added to our understanding of the subject +[@GarciaHuertes2016 pp. 11-15]. + +## Copyright and licensing + +To encourage collaboration and stimulate a circular gift economy +as introduced by @Mikkelsen2000, +this project is copyleft licensed: +Code parts are licensed +under the GNU Public Licence version 3 or newer, +and non-code parts are licensed +under the Creative Commons crediting share-alike 4.0. + # User Guide (product use) - Tanishka {#sec-user-guide} *TODO* @@ -230,7 +243,7 @@ if the water quality is good or not. Light Sensor: Detects environmental input and triggers a behavioral change in the simulated mussel. -P5: Used to indicate +P5.js: Used to indicate *FIXME: above paragraph is unfinished* @@ -280,7 +293,7 @@ Here it reads the data from the the p5.js and normalizes it. *FIXME: above paragraph need revisiting: It seems wrong that the sun affects mussels' ability to think, -and the P5.js code does not normalize anything -- +and the p5.js code does not normalize anything -- probably an interesting and valid point was intended, but it is unclear with current phrasing what that is.* @@ -313,7 +326,7 @@ Then Boom! a bluetooth connection is made. # Discussion and reflections- jonas *TODO: discussion about our project -e.g. what could have been included, what we could not make +e.g. what could have been included, what we could not make SUGGESTION: reflection/discussion about, whether used the guide from role 3 archetype (see course curriculum), @@ -368,7 +381,7 @@ about consuming a lot of space and resources* ## P5.js sketch `light.js` {.appendix} -```{.js include="P5/light.js" code-line-numbers="true"} +```{.js include="p5.js/light.js" code-line-numbers="true"} ``` ## Arduino sketch `sensor.js` {.appendix} |