MATLAB is widely known as a high-quality environment for any work that invlolves arrays, matrices or linear algebra and hence is extremely useful for scientific computing. If you are a MATLAB user and wondering if you can interact with the modems running UnetStack, the answer is yes. In this blog, you will learn how to:
Since the first public release of UnetStack in 2013, we have been steadily adding features and improving ease of use. UnetStack3 is a major milestone in the evolution of UnetStack, debuting a software-defined modem that can run on your laptop or on an embedded computer, and adding new features such as web-based development tools, easy-to-use application programming interfaces (APIs), JANUS support, support for languages such as Python, Javascript, C and Julia, higher performance networking protocols, and many under-the-hood architectural enhancements. Alongside UnetStack3, we also released the Unet handbook – a resource to help you master underwater networking and harness the full power of UnetStack3.
Accessing current simulation count
Accessing platform time and clock time
Suppressing simulation progress
Calculating distances between nodes
Programmatically stopping a simulation
Setting log level of the simulation agent
Specifying relative paths for files
Working with GPS coordinates
Distributing nodes randomly
Encoding and decoding PDUs
Using MATLAB to plot results
Using a visual debugger in agent development
UnetStack is bundled with the UnetIDE for developing agents. While the UnetIDE is well integrated with UnetStack, using a more feature rich IDE can be instrumental in boosting productivity when working with larger projects. In this tutorial, we will go through the steps required to create a UnetAgent using the powerful IntelliJ IDEA Java IDE.
The ease of implementation and development of applications as needed by researchers or in industry using underwater acoustic modems is crucial today. In order to realize the potential of advancements made in the underwater communication and networking technology, the applications should be easy to implement and test. Implementation of few basic operations such as transmission of packets carrying information from one node to another or transmission/recroding of signals are simple tasks using which complex useful applications/protocols can be developed. Therefore, a detailed explanation on implementation of these basic tasks in UnetStack (an underwater network stack and simulator) is presented here.