{"id":89,"date":"2021-02-09T12:39:55","date_gmt":"2021-02-09T11:39:55","guid":{"rendered":"http:\/\/projects.dimes.unical.it\/spine-bok\/?page_id=89"},"modified":"2021-02-12T16:41:10","modified_gmt":"2021-02-12T15:41:10","slug":"spine2","status":"publish","type":"page","link":"https:\/\/projects.dimes.unical.it\/spine-bok\/body-of-knowledge\/spine2\/","title":{"rendered":"SPINE2"},"content":{"rendered":"\n<p>SPINE2 is a novel framework specifically designed for the development of signal processing applications on WSNs based on the&nbsp;<strong>task-oriented paradigm<\/strong>&nbsp;and relying on a&nbsp;<strong>platform-independent<\/strong>&nbsp;node-side software architecture.<\/p>\n\n\n\n<p>The&nbsp;<em>task-oriented paradigm<\/em>&nbsp;provides constructs for specifying an application behavior as a set of interconnected tasks, each of which representing a particular activity ( such as a sensing operation, a processing function or a radio data transmission) by abstracting away low-level details. Designing an application as a composition of elementary blocks enables a more rapid application development, runtime reconfiguration and a simplified software maintenance.<br>A simple example of SPINE2 task-oriented application specification is depicted in the figure below. The set of interconnected tasks forms a direct graph representing distyributed chains of operations that include sensor data acquisition, data processing and merged result transmission.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img loading=\"lazy\" src=\"http:\/\/www.sensyscal.it\/spine\/\/images_spine\/spine2_task-app.png\" alt=\"\" width=\"-576\" height=\"-192\" \/><\/figure><\/div>\n\n\n\n<p>Thanks to the&nbsp;<em>software-layering approach<\/em>&nbsp;(see picture below), the node-side part of the SPINE2 framework can be rapidly ported for supporting different C-like sensor platforms, by simply redefining only the platform-dependent part (such as sensors and radio drivers) of the software architecture.<br>Specifically, the core framework provides the basic node execution logic (such as task man-agement, application-level message handling and on-board sensor abstraction management) whereas the platform-specific modules are the components needed for accessing the services and the resources provided by a specific sensor node platform on which the software architecture is running.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img loading=\"lazy\" src=\"http:\/\/www.sensyscal.it\/spine\/\/images_spine\/software_layering.png\" alt=\"\" width=\"420\" height=\"282\" \/><\/figure><\/div>\n\n\n\n<p>Apart from the node-side software in charge of the interpretation and execution of the task-based application, the SPINE2 framework includes coordinator-side software components, consisting of a Java-based API and a GUI-based application. Through them developers are able to: (i) managing the sensor network, (ii) defining and deploying the task-based applications, and (iii) gathering pre-elaborated data coming from sensor nodes for eventually passing them to a more specific application which may be in charge of more complex data processing and visualization.<\/p>\n\n\n\n<h3>Reference papers:<\/h3>\n\n\n\n<ul><li>N. Raveendranathan et al., &#8220;From Modeling to Implementation of Virtual Sensors in Body Sensor Networks,&#8221; in IEEE Sensors Journal, vol. 12, no. 3, pp. 583-593, March 2012, doi: 10.1109\/JSEN.2011.2121059.<\/li><li>S. Galzarano, R. Giannantonio, A. Liotta and G. Fortino, &#8220;A Task-Oriented Framework for Networked Wearable Computing,&#8221; in IEEE Transactions on Automation Science and Engineering, vol. 13, no. 2, pp. 621-638, April 2016, doi: 10.1109\/TASE.2014.2365880.<\/li><\/ul>\n\n\n\n<h3>Code Repository<\/h3>\n\n\n\n<p>Source code and documentation are available for free download at our&nbsp;<a href=\"http:\/\/github.com\/raffy1982\/spine-project\"><strong>GitHub project<\/strong><\/a>. <\/p>\n\n\n\n<p>We welcome contribution from all users, including bug reports and fixing, suggestions, and forks of SPINE.<br>Proposals for new sub-projects and forks should be sent via e-mail at <strong>r.gravina@dimes.unical.it<\/strong> by specifying a short workplan with a description of the new functionalities, the impact on existing code, and the expected time for the first stable release.<\/p>\n\n\n\n<h3>BSN research prototypes<\/h3>\n\n\n\n<ul><li>Gait-analysis<\/li><li>Handshake detection<\/li><\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>SPINE2 is a novel framework specifically designed for the development of signal processing applications on WSNs based on the&nbsp;task-oriented paradigm&nbsp;and relying on a&nbsp;platform-independent&nbsp;node-side software architecture. The&nbsp;task-oriented paradigm&nbsp;provides constructs for specifying &#8230;<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":13,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-fullwidth.php","meta":[],"_links":{"self":[{"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/pages\/89"}],"collection":[{"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/comments?post=89"}],"version-history":[{"count":8,"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/pages\/89\/revisions"}],"predecessor-version":[{"id":276,"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/pages\/89\/revisions\/276"}],"up":[{"embeddable":true,"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/pages\/13"}],"wp:attachment":[{"href":"https:\/\/projects.dimes.unical.it\/spine-bok\/wp-json\/wp\/v2\/media?parent=89"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}