<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Mariia Vasileva on Medium]]></title>
        <description><![CDATA[Stories by Mariia Vasileva on Medium]]></description>
        <link>https://medium.com/@mariavasss09?source=rss-78f72b687f5f------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*oYa17XV3B7ZwUClN5lAEiA.jpeg</url>
            <title>Stories by Mariia Vasileva on Medium</title>
            <link>https://medium.com/@mariavasss09?source=rss-78f72b687f5f------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Fri, 13 Nov 2026 20:50:17 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@mariavasss09/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Robonomics Winter School 2020. Program]]></title>
            <link>https://medium.com/airalab/robonomics-winter-school-2020-program-1ef5cfa6dc0e?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/1ef5cfa6dc0e</guid>
            <category><![CDATA[web3]]></category>
            <category><![CDATA[online-education]]></category>
            <category><![CDATA[events]]></category>
            <category><![CDATA[iot]]></category>
            <category><![CDATA[robonomics]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Thu, 20 Feb 2020 12:49:18 GMT</pubDate>
            <atom:updated>2020-02-21T10:18:59.139Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*FRCBXKm9vYRS4FQycL07dw.png" /></figure><p>As <a href="https://medium.com/u/3af16182e805">Sergei Lonshakov</a>, the leader of the Airalab team, says: winter is the best time for online training. This year we are carrying out our Robonomics Winter School again. This time, training is free and takes place completely online. The school program is planned for 4 weeks in increasing complexity — from simple generalized tasks to creating your own decentralized application and connecting the robot as a service to it.</p><h4>Week 1: Introduction to Robonomics services from a user perspective</h4><p>As part of the first school week, you should complete 2 lessons, consisting of theoretical and practical parts.</p><p>The first lesson has a reference to last year’s Winter school with the definition of weather on Mount Fuji. Using this task as an example, we will show how the process of measuring readings on Fuji has changed with the help of Robonomics over the past year.</p><p>The second lesson will be devoted to the first services in the economy of robots launched during 2019. These services clearly demonstrate the simplest possibilities of Robonomics from the user’s point of view using the example of measuring air quality at an apartment building in the city of Togliatti.</p><p>Following the results of the lessons of the first week of training, you will get acquainted with the dapp interface of Robonomics and learn how to use several already launched services from the project developers.</p><p>Duration of training: 2–4 hours.</p><h4>Week 2: Installation and interaction with AIRA from the engineer’s point of view. Connecting a robot</h4><p>In the second week of training, we will switch from the user’s position to the developer’s position and see what processes take place under Aira’s hood to organize the work of the services considered in the first week.</p><p>The second week also contains 2 lessons: first, we will install the AIRA image, and then try to communicate with it using commands in the console.</p><p>At the end of the second week, you will understand how with the help of AIRA you can connect any robotic unit (for example, a sensor) to the network.</p><p>Duration of training: 2–4 hours.</p><h4>Week 3: Building a dapp using Robonomics-js</h4><p>At the beginning of the training, we tried ourselves as users — using the Robonomics dapp interface, we learned the weather on Mount Fuji. Then we found out how the sensors are connected to measure the weather. In the third week, we move on to the study of building interfaces using the Robonomics-js library. This is exactly what allows us to interact with a robot through Robonomics (from the browser side) when creating our own service.</p><p>During the two lessons of the penultimate school week, we will install the Robonomics-js library, which is essentially a dapp interface designer, and learn how to work with it.</p><p>The result of the third week of the Winter school will be the creation of your dapp on the constructor Robonomics-js.</p><p>Duration of training: 4–6 hours.</p><h4>Week 4: Combining acquired skills in a case</h4><p>During the last week of the Winter school, we will combine the acquired knowledge together and create our own practical service on Robonomics.</p><p>We will offer students of the school 3 scenarios for using Robonomics to choose from:</p><ul><li>building a sensor network on top of ipfs;</li><li>use of the Ethereum blockchain for the combination of IoT and DeFi (Decentralized finance);</li><li>creating your own solution for the IoT market based on Polkadot/Substrate technologies.</li></ul><p>The above scenarios show the technologies that Robonomics makes available to robotics: ipfs, Ethereum, Polkadot/Substrate.</p><p>Duration of training: 4–6 hours.</p><h4>What is the result?</h4><p>At the end of four weeks of training at the Winter school of Robonomics, we will see human-to-machine (h2m) and machine-to-machine (m2m) communications in action, both from the user’s and the engineer’s points of view. That is, we will understand how modern Internet technologies (web3) are used to build h2m and m2m communications. Is this not enough to feel like in the near future? :)</p><p>Join the training — all lessons will be saved on YouTube. Also in the following publications we will analyze the program of each week in more detail. Stay tuned for blog posts.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1ef5cfa6dc0e" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/robonomics-winter-school-2020-program-1ef5cfa6dc0e">Robonomics Winter School 2020. Program</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Simple IoT scheme]]></title>
            <link>https://medium.com/airalab/simple-iot-scheme-990224363803?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/990224363803</guid>
            <category><![CDATA[philosophy]]></category>
            <category><![CDATA[internet-of-things]]></category>
            <category><![CDATA[iot]]></category>
            <category><![CDATA[data]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Wed, 15 Jan 2020 14:53:13 GMT</pubDate>
            <atom:updated>2020-01-17T20:36:56.817Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BGfd9LGnSFBNC5WDkfAReA.jpeg" /></figure><p><em>What is the Internet of things? Why is this technology needed? What is the basis of the IoT development? Three important components of human life that are influenced by the advent of the Internet of things.</em></p><p>It’s probably worth starting with the fact that the foundation of the Internet of things is the <strong>process of connecting the device to the network</strong>. The type of device and the network to which it will potentially be connected are not so important, as the connection technology itself. This topic is quite popular today, especially among people professionally immersed in this field, and for good reason — without it, the further development of IoT is impossible. Thus, the questions “What, how and where to connect?” set the vector of research over the past 10 years in this industry.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/241/1*Ek0fUCrhH08Au2IFHTn5Mg.png" /><figcaption><strong><em>Fig. 1: IoT scheme, level 1. Where О1 — data sources, and IoT — general information exchange circuit.</em></strong></figcaption></figure><p>Back to the question, what is the Internet of things. In professional environments, an opinion began to form that<strong><em> the Internet of things is the connection/channel between the data source and the general information exchange circuit</em></strong>. That is, there is nothing but a line between О1 and IoT.</p><blockquote>“It is important to understand that IoT is not the cable that goes into your apartment. IoT is about information exchange, about the formation of some specialized information circuits from multiple data sources”, — said <a href="https://medium.com/u/3af16182e805">Sergei Lonshakov</a>.</blockquote><p>Data sources can be sensors of noise, air pollution, temperature, etc. Each separate sensor is part of a variety of data sources divided into specific topics, like the social network Twitter structured by hashtags. Thus, each sensor publishes information in its own topic, and together they form a huge information space.</p><p>The collection of information from data sources is metadata encrypted in machine code. Agree, the picture is not the most interesting and understandable for ordinary potential users of the Internet of things. But when a certain information exchange circuit occurs (for example, an open network of weather information), IoT participants of the second level may arise:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/241/1*ieMVrEigpnR3SkpIS7OOVg.png" /><figcaption><strong><em>Fig. 2: IoT scheme, level 2. Where О2 — analytics.</em></strong></figcaption></figure><p>Second-level members are exactly who potential IoT consumers are waiting for. Why? Because consumers need already “convenient” processed data, they are not interested in the process of collecting and processing.</p><p>Let’s go back to the weather example. Already today, with the help of applications on a smartphone (for example, Yandex.Weather), we can monitor the movement of thunderclouds and obtain information about expected precipitation. Forecasts have become more accurate due to the emergence of more data sources and improved algorithms for their analysis. But we, as consumers, are not particularly interested in the technical side of the issue (the number of sensors, the process of collecting information, data analysis), we are interested in the product — reliable weather forecast presented in a convenient for perception format.</p><p>Let’s consider another example — online maps. Users of these services can find out how to get from point A to point B by public transport, how long it will take and when the right bus arrives. So, in this case, the good is the route presented in a visual form, and the benefit is the saving of time and nerves for an independent search for the path. Does someone think that for the implementation of the application it was necessary to install a special tracker on each unit of public transport, organize the collection of data from these trackers and analyze all options of routes from A to B in order to find the shortest and most convenient one? Unlikely.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/241/1*F6Elil0kiPKwZM32Z3oAew.png" /><figcaption><strong><em>Fig. 3: IoT scheme, level 3. Where О3- users.</em></strong></figcaption></figure><p>As can be seen from the figure above, the participants of the 2nd level are intermediaries between users and the general information circuit. They provide information from various services in a way that is understandable to users.</p><p>However, users do not always interact with the 2nd level of the Internet of things, sometimes there is a direct interaction with the basic information circuit. For example, an engineer can buy a sensor and collect information for himself. Then in the diagram they will be an element О1, that is, a supplier/data source.</p><p>Now we will consider <strong>3 important components of human life</strong>, which are affected by the appearance of the Internet of things:</p><ul><li>Time</li><li>Money</li><li>Happiness</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/241/1*YnJ6zwruq-O393OIHgm7pQ.png" /><figcaption><strong><em>Fig. 4: IoT scheme, impact on user’s life.</em></strong></figcaption></figure><p>From the above examples, it is clear that the Internet of things significantly saves us <strong>time</strong>, for example, for searching for a route and transport, especially in an unfamiliar city.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*zVWNVpLYzKby5FNu-Ad09w.jpeg" /><figcaption><strong>2 possible ways to reach the Airalab office in Saint-Petersburg.</strong></figcaption></figure><p><strong>Money</strong>. This component can be considered from different angles. In modern realities, information = money. A greater amount of information makes it possible not only to earn directly on it, but also affects the valuation of assets. Here you can not do without an example — consider the issue of a clean environment. There are various kinds of pollution — water, air, noise pollution. If a city has a network of sensors (for example, measuring noise level), then using the Internet of things you can create a noise map of a given city and implement it in services such as Yandex.Real Estate and Cian. Thus, the value of real estate objects will be affected by new parameters using the Internet of things.</p><p>Well, the last of the components we highlighted is <strong>happiness</strong>. The certain level of satisfaction, a certain pleasure not related to material wealth. The appearance of the information circuit will definitely have an impact on the educational environment of the city. Students and scientists will be able to write truly relevant scientific papers and conduct useful experiments using the data provided through the Internet of things. Perhaps this is the happiness — to learn new things and apply this knowledge to the benefit of humanity.</p><h3>Let’s sum up</h3><p>The Internet of things is not only a matter of connecting the device to the network, but also a question of the <strong>existence </strong>of the device in the network. With the advent of analytic services, we begin to see the results of the work of the Internet of things in our applications. Without services, we don’t get the very three important elements that we talked about above — time, money and happiness (in the context of using the benefits of the Internet of things, of course). But services will not start working until a network is formed. And the network will not form until ordinary users realize the value of data, the importance of collecting information and processing it. Here is such a vicious circle.</p><p>For information on how to launch the “wheel” of the Internet of things, so that we already start using services that require data which value is not obvious to users, read the following publications :)</p><p>PS: this article is based on the following video in Russian by Sergey Lonshakov:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FdqKOr7ZxNI0%3Ffeature%3Doembed&amp;url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DdqKOr7ZxNI0&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FdqKOr7ZxNI0%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/2d6e2e0b65eedf1d5fd89c526aa7e38b/href">https://medium.com/media/2d6e2e0b65eedf1d5fd89c526aa7e38b/href</a></iframe><p>You are welcome to ask questions in comments on YouTube.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=990224363803" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/simple-iot-scheme-990224363803">Simple IoT scheme</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Robonomics dApp Overview]]></title>
            <link>https://medium.com/airalab/the-robonomics-dapp-overview-acb003f51b9a?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/acb003f51b9a</guid>
            <category><![CDATA[tutorial]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[robonomics]]></category>
            <category><![CDATA[dapps]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Wed, 05 Jun 2019 13:01:30 GMT</pubDate>
            <atom:updated>2019-06-06T20:36:43.684Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*AMJXRKSTMnOtYWJCFEpYmw.jpeg" /></figure><p><em>At the end of May 2019, the Airalab development team launched the </em><a href="https://dapp.robonomics.network/#/"><strong><em>Robonomics dApp</em></strong></a><em>. In this article, we will examine in detail the current application functionality, learn how to convert AIRA tokens (I phase tokens) to XRT (II phase tokens), and also talk about the capabilities of lighthouses and providers.</em></p><h3>About dApp</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ZQLj8U9eOXIiPnhUUKq9Lw.png" /></figure><h4><strong>What is dApp?</strong></h4><p><strong><em>DApp </em></strong><em>(decentralized application) is the basis of the interface for accessing decentralized technologies.</em></p><p>In our case, it works for accessing Robonomics, Ethereum and IPFS, as a content store. The Robonomics dApp is the main decentralized application of the <a href="https://robonomics.network/en/">Robonomics platform</a>, where developers will collect the most important and generalized functionality for the network — both for providers and regular users.</p><h4><strong>Why the Robonomics dApp appeared right now?</strong></h4><p>To answer this question, let’s go to the <a href="https://github.com/airalab">Robonomics GitHub</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*iTPYr2jy0jSaD8tH12eilA.png" /></figure><p>Here you can see 6 pinned repositories, which in essence are the Robonomics platform. Today we will dwell on the <a href="https://github.com/airalab/robonomics_comm">robonomics_comm</a> repository, the Robonomics communication protocol. Exactly here, in robonomics_comm, engineering is being implemented around protocol implementation. Today, there are <a href="https://github.com/airalab/robonomics_comm/releases">8 releases</a> of the communication protocol, the last of which is called <a href="https://github.com/airalab/robonomics_comm/releases/tag/v1.0.0">Robonomics LTS 1.0</a> (see Sergey Lonshakov’s article “<a href="https://blog.aira.life/robonomics-1-0-lts-60e783d3b84">Robonomics 1.0 LTS</a>”). <strong><em>This release stabilizes the Robonomics communication protocol for at least a year and assumes support by developers.</em></strong> With the advent of the LTS version, the team decided to create a dApp that will allow to start the work of Robonomics providers, as well as enable the community to get acquainted with the current state of the network and try it in action.</p><h4>Now there are <strong>3 sections</strong> in the Robonomics dApp:</h4><ul><li>Statistics of the Robonomics network;</li><li>Lighthouses;</li><li>AIRA → XRT Alembic.</li></ul><p>Further in the article we will consider each of these sections separately. In order to start using the Robonomics dApp, you need to log in using <a href="https://metamask.io/">MetaMask</a>.</p><h3>Section 1 “Statistics of the Robonomics network”</h3><p>The “Statistics of the Robonomics network” section gives us information about <strong><em>how many robot launches using the Ethereum computer were done through the Robonomics netwoek and how much gas was spent on this in the global computer.</em></strong></p><p>In this section, you can see <strong>3 indicators</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Id_7KsjSZ1j4h3DFlpE87w.png" /></figure><ul><li>The first indicator is the <strong>number of robots controlled by Ethereum</strong>. The aggregated image of Robonomics, as a platform that allows connecting robots under the control of the global Ethereum computer, rests on it.</li><li>The second indicator is the <strong>cost of controlling robots</strong> in gas.</li><li>The third is the<strong> average remuneration of a provider</strong> in XRT (how the emission and commission work in the Robonomics network, read in <a href="https://robonomics.network/robonomics_white_paper_en.pdf">whitepaper</a>, chapter 6 “Robonomics Token, XRT”).</li></ul><p>In the same section, the Robonomics telemetry is available:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aXmG9c3li4VKUlRfI8XNYA.png" /></figure><h3>Section 2 “Lighthouses”</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/880/1*EAncBgeQBqri6BSHvuRpsg.png" /></figure><p>First of all, <a href="https://dapp.robonomics.network/#/lighthouse">this section</a> is interesting for current and potential providers of the Robonomics network. If you want to be able to connect robots to the Ethereum computer using Robonomics, then this section is for you.</p><blockquote>“Robonomics realizes that part of the communication that the Ethereum global computer cannot implement. This is an off-chain part and implemented smart contracts. Thus, the Robonomics platform provides an additional set of tools around the use of the global computer, which allows making the process of connecting robots to the Ethereum computer easier and more understandable for users”, — says Sergey Lonshakov.</blockquote><p>Before you begin to work with the practical part described in this article, we recommend you to review the theory of the Robonomics lighthouses presented in the following sources:</p><ul><li><a href="https://robonomics.network/robonomics_white_paper_en.pdf">whitepaper</a>, chapter 5.2 “Providers and Lighthouses”;</li><li><a href="https://youtu.be/a2EWaaFcFm8">Life cycle in the Robonomics network</a>.</li></ul><p>So, in this section of the Robonomics dApp, you can create your own lighthouse (with blackjack and… you know) and go to work on the existing one.</p><p>First, let’s consider the <strong>existing lighthouses</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/875/1*bgvxkSFr6szM2imd1Cc01A.png" /></figure><ul><li><strong>airalab.lighthouse.5.robonomics.eth</strong> is the default Airalab lighthouse. It has a high stake requirements.</li><li><strong>a.lighthouse.5.robonomics.eth </strong>is a test lighthouse with the minimum stake requirements.</li><li><strong>mobilerobotics.lighthouse.5.robonomics.eth </strong>is a lighthouse for mobile robotics tasks (for our partners <a href="https://dczd.tech/">Decentralized Tech</a>).</li></ul><p>Now let’s connect to <strong>a.lighthouse.5.robonomics.eth</strong> test lighthouse:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PW5hcQyoagFUgK1K9GQ8-g.png" /></figure><p>We see that now there are 2 providers — the first one has 1 quota and the second — 10. Both providers have some amount of ETH on their balances. The status is displayed only for active providers (who have already worked at the lighthouse). On the right in the “Lighthouse details” table we see the lighthouse’s address, its status, balance and minimum stake per quota in XRT.</p><p>Let’s try to go to this lighthouse as a provider. For this you need to resolve the quota, i.e. allow the smart contract of the lighthouse to deduct XRT from your balance to provide a quota:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ihodI0mOCnevfmGpngiAfg.png" /></figure><p>Wait until the transaction is mined.</p><p>The transaction succeeded:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IiOuiLuYwEiAfmKnftM1Cg.png" /></figure><p>Now we can work as a provider at this lighthouse:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*S7PmsDrHTkVGW-av0arTHw.png" /></figure><p><strong>Creating a new lighthouse:</strong></p><p>To create your own lighthouse, it is necessary to choose “New lighthouse” in the pop-up table:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/784/1*nd-chT5homYlltu6lNUt1w.png" /></figure><p>Fill in the following fields:</p><ul><li><strong>Name</strong>. It is a unique identification mark of the lighthouse. It may be any you like, but remember — everything that you write there will remain in history (i.e., in the blockchain) forever.</li><li><strong>Minimal stake to get one quota (XRT)</strong>. This is the way how you can limit users access to your lighthouse by their balances. You set the minimum threshold of entry, which determines the desire of providers to work on your lighthouse, as well as their quality.</li><li><strong>Silence timeout for provider in blocks</strong>. This is the maximum time given to the provider for “idleness” (i.e., so that he does not send anything to the network) on his “work shift”.</li></ul><p>After you fill in all the required fields and create your lighthouse, review the instructions for work at it above.</p><h3>Section 3 “AIRA → XRT Alembic”</h3><p>The first thing you can see in <a href="https://dapp.robonomics.network/#/alembic">this dApp section</a> is a letter from the developers:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pzyIf8X9YVGHm7OzZtqWoA.png" /></figure><p>We recommend you to read through the letter and the explanatory table presented in it for the tokens AIRA, AIRA ID and XRT.</p><p>Now let’s step by step deal with the work of the alembic.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*b_qQqv1O6tvriEo1YYSB_Q.png" /></figure><h4><strong>Step 1: pass Civic ID</strong></h4><p>To get through the Civic ID, you need to install the Civic application on your phone. Then you should fill in the necessary data according to the instructions in the application. After that, the application will offer you to scan the QR-code. To get the QR-code, go to the “To the action!” section and click on the Civic ID button:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*CO_cEC5Bi7GJjsDElgH_JA.png" /></figure><p>Right after pressing the button, the QR-code will appear on the screen:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/896/1*FaNVSD3t2GUPCbrdzPUH0g.png" /></figure><p>Scan it using the Civic app on your phone:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FheZpAyhZces%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DheZpAyhZces&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FheZpAyhZces%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="640" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/3cd2ba7122db81b341d4111cf30b6cf0/href">https://medium.com/media/3cd2ba7122db81b341d4111cf30b6cf0/href</a></iframe><p>Congratulations, you are identified and now can move to the next step.</p><h4><strong>Step 2: conversion of AIRA tokens to AIRA ID tokens</strong></h4><p>After you passed the Civic ID, you can see the following buttons became active:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*cQDNwGOzN5d_z-tnYYhUGg.png" /></figure><p>Enter the amount of tokens for conversion and click “Convert to AIRA ID”. The MetaMask window will appear on the screen — confirm the transaction:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*uIM1D-m-uEliyp7TjENu3A.png" /></figure><p>Wait until the transaction is mined.</p><blockquote><em>!To view the status of the sent transaction, you can click on your address in the upper left corner.</em></blockquote><p>After the transaction of confirmation has succeeded, the MetaMask window will appear again — now we are sending the transaction for conversion.</p><blockquote><em>!This transaction means that the alembic took your AIRA tokens and burned them, instead sending the appropriate number of AIRA ID tokens to your account balance. This is a great example of an autonomous process: after you sent a transaction of confirmation (allowed to remove AIRA tokens from your balance), the alembic smart contract completed the process of converting some tokens to others.</em></blockquote><p>After this transaction has succeeded, update the dApp and see that the balance of tokens has changed:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/764/1*NRJxBJ_kVFY5b0wmqAdGUw.png" /></figure><p>Conversion to AIRA ID succeeded. To convert AIRA ID to XRT, go to the next step. But note that the process of converting to XRT can be done at any other time — it is not necessary to do it right away.</p><h4><strong>Step 3: conversion of AIRA ID to XRT</strong></h4><p>The process is similar to the process in the previous step:</p><ul><li>Set the amount of AIRA ID tokens for converting in XRT;</li><li>Send a transaction of confirmation;</li><li>After the transaction of confirmation has succeeded, send the transaction for execution;</li><li>After the transaction was executed, the XRT balance at the top of the screen was replenished:</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/819/1*n8u_fFzEpjNfpH021nwuLQ.png" /></figure><blockquote><strong><em>Why do I have more XRT than I asked for conversion?</em></strong></blockquote><blockquote><em>Airalab developers have allocated an equal amount of XRT (1,000,000) for converting AIRA tokens, which are ~ 997,000.</em></blockquote><p>Now that you have XRTs on your balance, you can become the Robonomics network provider and work at a lighthouse.</p><h3>Results</h3><p>In this article we dealt with the following points:</p><ul><li>What is the release of Robonomics LTS 1.0;</li><li>What is the Robonomics dApp;</li><li>What the Robonomics statistics shows;</li><li>Robonomics Lighthouses — how to create a new lighthouse and connect to an existing one;</li><li>How the AIRA → XRT Alembic works.</li></ul><p>More technical materials on this topic, prepared by the team devops Vadim Manaenko, can be found <a href="https://vk.com/away.php?to=https%3A%2F%2Faira.readthedocs.io%2Fen%2Flatest%2Frobonomics_network%2Fbecome_a_provider.html&amp;cc_key=">here</a>.</p><p>At the moment, this is the full functionality of the Robonomics decentralized application — connect, go through the Civic identification, try, share your impressions on community@aira.life with the note “Robonomics dApp”.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=acb003f51b9a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/the-robonomics-dapp-overview-acb003f51b9a">The Robonomics dApp Overview</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[“Smart yard. Safe environment” or Sensors as a service with blockchain protection of readings]]></title>
            <link>https://medium.com/airalab/smart-yard-safe-environment-or-sensors-as-a-service-with-blockchain-protection-of-readings-a751a7b8a9a3?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/a751a7b8a9a3</guid>
            <category><![CDATA[sensors]]></category>
            <category><![CDATA[smart-cities]]></category>
            <category><![CDATA[environment]]></category>
            <category><![CDATA[blockchain-technology]]></category>
            <category><![CDATA[poc]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Fri, 12 Apr 2019 12:42:13 GMT</pubDate>
            <atom:updated>2019-04-12T12:42:13.007Z</atom:updated>
            <content:encoded><![CDATA[<h3>The “Smart yard. Safe environment” project or Sensors as a service with blockchain protection of readings</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VAZMy3mPU4tuSWpJL1wMTA.jpeg" /></figure><p><em>Today in industrial cities there are a lot of different manufactures. Emissions from them increase the risks of diseases, in particular, diseases of the respiratory system, which are especially dangerous for children. Now the city authorities are not able to solve this kind of problems efficiently, since there are very few stationary stations monitoring the level of air pollution, so data is rarely measured and arrive with a delay. In this regard, engineers of the Airalab team had the idea to install a modern automatic sensor produced by </em><a href="http://www.libelium.com/"><em>Libelium</em></a><em> in the yard, for example, on the playground. In their opinion, this provides an opportunity to monitor the state of the air online, and thereby helps protect the urban residents. This is how the “Smart yard. Safe environment” project began — more information below.</em></p><h3>A couple of words about the project</h3><p>The “Smart yard. Safe environment” project is a system of sensors that monitor air quality in the yard. The use of blockchain technology for storing information in a decentralized network in this case will allow the state and its citizens to trust this data and use it along with the data from stationary posts.</p><p>How is it possible to use the data stored in a decentralized network?</p><ul><li><strong>Citizens </strong>will be able to buy data directly from sensors, bypassing bureaucratic procedures.</li><li>The <strong>city administration</strong> will be able to use the information obtained from private sensors to improve the quality of citizens’ lives.</li><li><strong>Entrepreneurs </strong>will have the opportunity to sell air quality information directly to organizations interested in it, it means that there is no intermediary, which makes it possible to recoup the cost of installing sensors.</li></ul><p>In this case, it is possible to use sensors according to the service model: you need to send a request in the decentralized application (dApp) in order to receive data from a sensor, then, on the digital platform of the smart city, in response to the demand received, a smart contract will be created to launch sensor measuring, and after that the sensor will respond to the data requests signed by the customer’s private key with the current readings. In addition, the readings are protected through the use of blockchain technology: similarly to the use of Robonomics in supply chain data protection, each message of the sensor is signed with its private key, and the hash of the readings is stored in the blockchain, which means that data reliability can be verified by checking the hash of the data under review with the data hash recorded in the blockchain and checking the signatures of individual measurements.</p><p>To see how it works now, use this link: <a href="http://dev.aira.life/sensors-house/#/">http://dev.aira.life/sensors-house/#/</a></p><h3>First experiments and results</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*x7D9HkIMlTqRgs2e" /><figcaption><strong><em>Plug&amp;Sense! Smart Environment PRO in a lantern</em></strong></figcaption></figure><p>On the 10th of August, 2018, a measuring system was installed on the territory of one of the Togliatti residential complexes, equipped with Libelium sensors, which record the air condition. The data obtained gave the first idea of ​​the current air state in the city on the example of one yard. The Airalab team used equipment of Spanish supplier Libelium. Waspmote Plug&amp;Sense! equipment is easy to use and does not require special metrological knowledge. The device is Arduino-compatible and programmed in C ++. Measurements can be carried out continuously, and then you can send readings via the 4G Internet.</p><p>Alisher Khassanov shared his personal opinion on using Libelium equipment:</p><blockquote>“Smart Environment PRO is an excellent platform. You can start with the prototype on Waspmote with Gases PRO in the office and transfer the firmware to a device with a case for outdoor installation. During the day, the battery charge is enough to send measurements via 4G from 5 sensors once a minute or less. During the night time, the battery is recharged from those lantern, where the sensor is installed. Also you can use Arduino-compatible libraries with minor modifications. For example, we used a library of one-time passwords and ed25519 signatures. To operate the sensors, it is enough to read the documentation; no special skills are needed. As for me, I would like to be able to check the sensor and use it as an approved measurement tool throughout the territory of Russia, but even now it is an excellent platform for experiments. It is compact and flexibly programmable with a high frequency of measurement acquisition. Moreover, it has more reliable measurements (due to factory calibration), than alternative Arduino-compatible solutions, and also it provides an opportunity to get the system ready for operation fast”.</blockquote><h4>Researches</h4><p>The data obtained from the measurements of atmospheric air for the period 08/15/2018–08/31/2018, were processed statistically with the identification of average daily readings of sensors installed on the playground at Sportivnaya-33, which became the first object of the research. During the experiment, exceeding the daily maximum permissible concentration of substances was not detected.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/955/0*Y3UrSmGaD3kRSLDN" /><figcaption><strong><em>Figure 1: Diagram of average daily values ​​of NO, SO2</em></strong></figcaption></figure><p>It is noteworthy that high concentrations of NO (Fig. 1) are observed in the daytime (approximately from 5 a.m. to 4 p.m.), while at night the NO emissions are almost zero. An increase in SO2 and PM1, PM2.5, PM10 particles is observed daily in the evening-night time (from 3 p.m. to 8 a.m.), indeed, the maximum emission values ​​for SO2 (in the case of constant obtained values ​​during the day) exceed its average daily maximum of permissible values.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/980/0*Xpgyb_OMc1pVBRmP" /></figure><p>From the observations above we can conclude about the sources of pollutant emissions: the sources of NO emissions, most likely, can be considered motor vehicles. But the evening-night emissions of SO2 and PM1, PM2.5, PM10 particles can be associated with the work of industrial enterprises.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/975/0*b-iSP1YjK0-GxPmQ" /><figcaption><strong><em>Figure 2: Diagram of average daily changes PM1, PM2.5, PM10</em></strong></figcaption></figure><p>Taking into account the correlation analysis of the link between PM1, PM2.5, PM10 particles and SO2/NO concentrations, the increase in PM1, PM2.5, PM10 is associated with emissions of substances different from SO2/NO. However, considering all of the above, it is impossible to draw conclusions about the nature of substances (inorganic or organic emissions) different from SO2/NO, which lead to an increase in the PM1, PM2.5, PM10 particles (Fig. 2).</p><h4>Social activity of citizens</h4><p>According to the monitoring of air quality in Togliatti by the social community of activists, the deterioration of the air condition was observed during the night of 25 and 26 August 2018, as evidenced by data from our installed sensors. For more large-scale conclusions, it is necessary to conduct the experiment in several buildings. The period of this experiment is 1 year and about 10 buildings in the city of Togliatti.</p><p>Interim conclusionsThe average daily MPC (maximum permissible concentration) is not exceeded by any indicator, although there was a sharp increase in certain periods of time. Based on the measurements, which were held every 10 minutes day and night from August 15 to August 31, 2018, the following recommendation could be made: during the period of the most active use of transport on the city roads, it is better to refrain from long walks and staying outside.</p><p>The growth of some indicators in the period from 3 p.m. to 5 a.m. can probably be associated with the presence of smog and a strong odor in the air.</p><h3>Further researches and experiments</h3><p>Based on the analysis of data from the sensor installed in the yard, Airalab engineers made sure that their research was useful and necessary. Also, there was an idea to go beyond the scope of air condition researches only at one point of the city by installing a whole network of sensors. In this regard, the future plans for the project are as follows:</p><ul><li>public opinion research on the subject of possible places for installation of sensors;</li><li>appealing to the relevant departments for comments on the results obtained;</li><li>continuation of the experiment not only in terms of installing a larger number of sensors, but also combining them into a network capable of conducting online monitoring of the air quality in the city of Togliatti;</li><li>sensor network testing.</li></ul><p>If data is collected from several buildings, which is primarily aimed at the interest in the air quality of their residents and a number of specialized agencies, this will help to adapt the laws to the realities of the development of modern technologies. Civil control of ecology should allow to consider the data obtained from citizens automatically using the open API of the “Smart City”.</p><p><strong><em>Also read a press-release in the Libelium blog:</em></strong> <a href="http://www.libelium.com/preventing-asthsma-sensor-network-air-quality-pm10-dust-in-play-area/">http://www.libelium.com/preventing-asthsma-sensor-network-air-quality-pm10-dust-in-play-area/</a></p><p><strong><em>In Russian:</em></strong> <a href="http://iotsmart.ru/smart-yards-airalabrus/">http://iotsmart.ru/smart-yards-airalabrus/</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a751a7b8a9a3" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/smart-yard-safe-environment-or-sensors-as-a-service-with-blockchain-protection-of-readings-a751a7b8a9a3">“Smart yard. Safe environment” or Sensors as a service with blockchain protection of readings</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Gaka-chu. The Robot-artist. Part 3: the sequence of tasks execution on the manipulator]]></title>
            <link>https://medium.com/airalab/gaka-chu-the-robot-artist-part-3-the-sequence-of-tasks-execution-on-the-manipulator-73a3df46fcad?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/73a3df46fcad</guid>
            <category><![CDATA[mathematics]]></category>
            <category><![CDATA[poc]]></category>
            <category><![CDATA[roses]]></category>
            <category><![CDATA[robotics]]></category>
            <category><![CDATA[kuka]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Mon, 18 Feb 2019 15:39:03 GMT</pubDate>
            <atom:updated>2019-02-18T15:39:03.001Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*QtiBwt7w4g6c4HlUAv2Mfg.jpeg" /></figure><p><em>In the previous parts of the series of articles about the robot-artist Gaka-Chu, we considered </em><a href="https://blog.aira.life/gaka-chu-d2f6cfa61390"><em>the general concept of the project</em></a><em> and </em><a href="https://blog.aira.life/gaka-chu-the-robot-artist-part-2-stages-e990d15e0447"><em>the stages of work</em></a><em> — follow the links to read if you have not done it yet. Today’s part is dedicated to the harsh technical side of the project — algorithms and mathematics. For your convenience, we divided the drawing process into several tasks. Stretch out and get comfortable, we are beginning.</em></p><h4>Task #1: forming a path from the image</h4><p>Let’s imagine that we have some kind of image in the .jpeg format, in other words, a bitmap image, and we want the robot to depict it on the canvas. Remember that we already know from <a href="https://blog.aira.life/gaka-chu-the-robot-artist-part-2-stages-e990d15e0447">the previous article</a>:</p><blockquote>“…it was necessary to imagine that a manipulator is about the same as a human, who is devoid of all feelings (sight, touch, hearing, sense of smell), except for movement, and then we should figure out how to train such a creature. And it was one of our greatest challenges”.</blockquote><p>For us in this situation, this means that the robot will not see the picture, no matter how many times we show the image to it. How to explain to the manipulator what he should draw? So, we need a certain system that is able to calculate changes in the color of a brush stroke as it moves along the canvas. This is necessary to obtain, for example, a gradient fill, which will allow the robot to imitate artist’s strokes. The system should be able not only to calculate color changes, but also to form complex paths from an image, which will be transformed into trajectories in the following stages. At this stage, the coordinates of the path are specified in pixels (a dimensionless quantity).</p><blockquote><strong><em>What is the difference between the path and the trajectory?</em></strong><em><br>In this case, the path is the movement of the brush, for example, from point A to point B in the given coordinates. If you add a time reference, you get a trajectory. Thus, the trajectory describes the movements that the manipulator needs to execute in order for the brush to move across the canvas, thereby creating a segment AB.</em></blockquote><p>We described the general issue above, let’s proceed to the particular case of Gaka-Chu. The task is slightly simplified, as we depict monochrome hieroglyphs without the use of gradients and shadows. This means that for us the main thing is to perform movements along given coordinates, since there are no restrictions along the X, Y, Z axes.</p><blockquote>“Transforming an image into a path is a very common task. We severely limited it by selecting a monochrome image. Thus, we need to build that part of the system that can transform the text”, — says Alexey Ovcharov, the lead engineer of the project.</blockquote><p>This task also includes the so-called <strong>skeletonization</strong> or “compression” of the image. As an example, take a bitmap image of a text. There is no such thing as a text for a manipulator, for it this is a certain set of pixels with a certain combination of colors in the RGB basis. Our common task is to get from the bitmap image a set of paths to be sent to the manipulator’s controller. The technology of “compressing” an image is a transformation of the original (complex for a manipulator) image into a simpler from a graphical point of view object using <a href="http://agcggs680.pbworks.com/f/Zhan-Suen_algorithm.pdf">an algorithm</a>. Sequences of pixels form a multitude of thin lines. From a mathematical point of view, these thin pixel lines, or paths, are arrays of data — dots, written in order, indicating the manipulator from which to which one it should move.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/665/0*li_cPfcyFk9KLaqo" /><figcaption><strong>Coordinate system of an image.</strong></figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/699/0*RKwy8j_mM8ho-cHd" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/388/0*KFdab3Z2Q_jvxgbM" /><figcaption><strong>The result of skeletonization.</strong></figcaption></figure><h4>Task #2: scaling and projection of the image on the working surface</h4><p>So, we have the original image in the form of a picture and we have the same image in pixel form, obtained at the previous stage of work.</p><p>But we still can not transfer the image to the manipulator in order it can start drawing. Why? The fact is that our pixel image exists in a sort of isolation from the real world — it is abstract and does not have a specific scale (dimension). And we need to make a reference to reality — to attach to time and project this image on some specific surface (canvas), which does not necessarily have to be perfectly flat. Thus, we need to replicate the formed paths in pixels to a specific canvas, scaling in proportion to the size of this canvas, that is, in fact, moving from pixels to meters. Then it is necessary to determine the surface parameters: if it is flat, convex, concave, curve, etc. — the manipulator can move almost on any surface, if the movement paths are correctly set, taking into account the equation of the plane.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/199/0*2spl04BuGh9LcEO0" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/407/0*0LvXgFY7SPu67w4R" /><figcaption><strong>1/ The coordinate system of the canvas (canvas_link) relative to the manipulator (basic reference). 2/ Image projection on the canvas.</strong></figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/773/0*GIwYis0uHhYSzhiJ" /><figcaption><strong>The coordinate system x, y, z. Plane O. The coordinate system t, n, b. Pi-pf curve (path).</strong></figcaption></figure><p>Let’s go through a specific example when the drawing plane is shifted / unfolded relatively to the manipulator, we will consider it ideally smooth. Then relatively to the manipulator the plane can be described by the equation:</p><p><strong>z=Ax+By+C</strong></p><p>Knowing the coefficients <strong>A, B, C</strong> and the coordinates of the path <strong>ximg, yimg</strong> on the picture, we can get the <strong>z</strong> coordinate relatively to the manipulator. It is important to describe the coordinates of the image in specific quantities, that is, in meters. To do this, we need to know the dimensions of the canvas in order to then display an image on it in proportion to the height and width.</p><p>Let’s imagine that we have an image of 1280x1024 pixels, and the canvas size is 0.1x0.3 meters. Then the size of the image in meters, provided that scaling is proportional to the canvas, it will turn out to be 0.1x0.08 meters, and the proportionality coefficient will be</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/192/1*o-2NNHv-LRQ4hAV7yWik3g.png" /></figure><p>As a result, the scaled coefficients <strong>kximg, kyimg</strong> will be substituted into the equation above.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/285/1*FnxwCN6Ubw94ceYErvm5Zg.png" /></figure><h4>Task #3: transforming the paths into trajectories</h4><p>The paths specified in the first task are converted to the angles of the manipulator (the inverse problem of kinematics), then dynamics, that is, time, is attached to these angles. Here it matters, for example, the acceleration of motion. This is the time parametrization, which depends on the dynamic characteristics of the manipulator.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/583/0*sZRFBpVZOcD3fMRj" /></figure><p>For time parameterization, it is assumed that the angle trajectory is given by the equation:</p><p>where <strong>a0, a1, …, an</strong> are the trajectory parameters that depend on the dynamic parameters of the system and the initial conditions (for example, angles and velocities at the initial and final time <strong>ti, tf</strong>). For example, for given initial angles q and angular velocities q, you can use the following system:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/611/0*HcgwKNaUeshEqtxl" /></figure><p>You can read more <a href="http://home.deib.polimi.it/gini/robot/docs/spong.pdf">here</a> (in the section PATH PLANNING AND COLLISION AVOIDANCE).</p><h4>Task #4: trajectory execution by a manipulator</h4><p>At this stage, we have the image in an understandable for the manipulator form, it is scaled and tied to the surface parameters, and we also have the trajectories of the robot’s movements so that it can realize the picture on the canvas. Why doesn’t the robot draw yet? Right, because he has not received a trajectory from us yet. How to transfer the trajectories to the robot? In the previous parts of the series of articles about the robot-artist, I already mentioned ROS industrial and their EKI interface, using which you can transfer the motion trajectories to the manipulator and get quite smooth lines on the canvas. In this case, a package is implemented in ROS, which allows to execute the trajectories called <a href="https://moveit.ros.org/">MoveIt</a>. It contains an executor who monitors the state of the system from the topic /joint_states and the surrounding objects, allowing it to avoid obstacles and strong overclocking of the system. In this case, the MoveIt executor sends the trajectories to the <a href="https://github.com/ros-industrial/kuka_experimental/tree/indigo-devel/kuka_eki_hw_interface">kuka_eki_hw_interface package</a>, which then sends the trajectories to the manipulator itself and sends its state to /joint_states.</p><h4>Task #5: image motion adjustment</h4><p>The final touch should be quality control of a stroke. That is, we need an algorithm that will adjust the drawing process, so that the image will be as close to the original as it is possible. There is one “but” — this problem is not solved in our project yet, and generally in the world has not been implemented in a dignified manner.</p><h4>To sum up</h4><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FxSD_lsrAA0I%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DxSD_lsrAA0I&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FxSD_lsrAA0I%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/4f08618087b50723a2f20f2341dda7aa/href">https://medium.com/media/4f08618087b50723a2f20f2341dda7aa/href</a></iframe><p>In this video you can look through the execution of the tasks described above, in order. Very soon, Gaka-Chu will launch a new auction to sell its paintings, and you can become the owner of one of them. In the next article, I announce the beginning of the auction and tell you how to participate in it. Subscribe to the blog.<br><a href="http://t.me/robonomics"><strong>Ask a Question.</strong></a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=73a3df46fcad" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/gaka-chu-the-robot-artist-part-3-the-sequence-of-tasks-execution-on-the-manipulator-73a3df46fcad">Gaka-chu. The Robot-artist. Part 3: the sequence of tasks execution on the manipulator</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[“Gaka-Chu. The Robot-artist”. Part 2. Stages]]></title>
            <link>https://medium.com/airalab/gaka-chu-the-robot-artist-part-2-stages-e990d15e0447?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/e990d15e0447</guid>
            <category><![CDATA[poc]]></category>
            <category><![CDATA[robot-art]]></category>
            <category><![CDATA[robonomics]]></category>
            <category><![CDATA[kuka]]></category>
            <category><![CDATA[robotics]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Wed, 23 Jan 2019 15:10:13 GMT</pubDate>
            <atom:updated>2019-01-23T15:10:13.408Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*QtiBwt7w4g6c4HlUAv2Mfg.jpeg" /></figure><p><em>The previous part about the project is available </em><a href="https://blog.aira.life/gaka-chu-d2f6cfa61390"><em>here</em></a><em>. And now let’s talk about the stages of work on the project. Work on the robot-artist lasted about 1.5 years. The time from the emergence of the idea of ​​creating a project to its implementation can be divided into several stages.</em></p><h4><strong>#0.</strong></h4><p>Choosing of a robot can be indicated by the <strong>zero </strong>or <strong>preparatory stage</strong> of the project. In parallel with the process of buying a manipulator, there was a very important process of realizing how, in principle, a robot can draw with paints: that is, before teaching it to draw, it was necessary to realize how it differs from a human in this particular situation. <strong>Roughly speaking, it was necessary to imagine that a manipulator is approximately the same as a human that is devoid of all his feelings (sight, touch, hearing, sense of smell), except for the opportunity to move, and to figure out how to train such a creature. And just this was one of the biggest challenges.</strong></p><blockquote>“When a human sees a brush, he understands how twisted it is. The manipulator does not understand this. It can not hold the brush on the paper, so as to get a certain stroke. It means, we need a separate monitoring system, which is not such a simple task”, — shared Alexey Ovcharov.</blockquote><h4><strong>#1.</strong></h4><p>After the conclusion that the movements and strokes of our robot-artist are fundamentally different from human ones, the first stage began — the selection of drawing equipment, which dates from <strong>the summer of 2017</strong>.</p><p>The selection took place according to the following criteria:</p><ul><li>sufficient elasticity of the brush;</li><li>the constancy of the stroke’s tone;</li><li>average density of paint to prevent spreading over the canvas.</li></ul><p>Initially, 4 types of paint were chosen — gouache, acrylic, watercolor and oil. And 3 types of brushes — bristles, nylon and squirrel tails. The watercolor turned out to be too liquid and left uneven smudges, some extra time to change color and a special solvent is necessary for the oil, the gouache lays unevenly, and when using a hard brush it leaves stripes. Therefore, we stopped at acrylic, which evenly lays down, maintaining a fairly rich tone, and nylon and bristle brushes are more suitable ones for the chosen type of paint.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1F8s9mmy3wpv2bjzJ3E2BQ.jpeg" /><figcaption><strong><em>Tests with paints and brushes for Gaka-Chu</em></strong><em>.</em></figcaption></figure><h4><strong>#2.</strong></h4><p><strong>The second stage </strong>of the work began in the simulator, since initially KUKA did not work with the software part that our engineers would like, but it was necessary to test high-level algorithms that were already being prepared for the future Gaka-Chu. <strong>July 2017 </strong>can be considered the beginning of this stage.</p><blockquote><strong><em>Why Gaka-Chu?<br></em></strong><em>The team of engineers wanted to get some beautiful image at the output, but not as large as the picture on the </em><a href="https://youtu.be/Lg-9HoGXrM4"><em>Rosbank video</em></a><em>, for example, since our manipulator is quite small and it is not very convenient for it to paint meter-long canvases. So there came the idea to draw a text, namely hieroglyphs. We tried to draw different: both Chinese and Japanese. A little later, stopped at the Japanese ones. In this regard, it was decided to call our robot in Japanese style “Gaka” which in Japanese means “artist”, and the prefix “Chu” appeared due to the famous character of traditional Japanese anime cartoons — Pikachu.</em></blockquote><h4><strong>#3.</strong></h4><p>In <strong>August 2017</strong>, after working in the simulation, the next — <strong>third stage</strong> of the project — began: work on software for interaction with the robot. We needed a kind of “bridge” between software of the robot itself and ROS.<br>The main difficulty of this stage was the need to understand software of the robot itself.</p><blockquote>“I killed the robot. Literally. It was necessary to perform several tasks with the manipulator, and while I was doing them, the system produced some kind of error. My own mistake was the decision to reinstall the system completely, with the result that Gaka-Chu failed for a while. Namely, for 3 or 4 months”, — admitted Alexey.</blockquote><p>At that time, while the robot was “resting”, active work was again carried out in the simulation. The first success of this stage was the image of Jake from the cartoon “<a href="https://en.wikipedia.org/wiki/Adventure_Time">Adventure Time</a>”:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/500/1*19B291KkBybIWwwC5axd7Q.jpeg" /><figcaption><strong>Jake.</strong></figcaption></figure><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FkIHO89kDxZM%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DkIHO89kDxZM&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FkIHO89kDxZM%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/1ec913e9512dd4c563a89618b1acf5e9/href">https://medium.com/media/1ec913e9512dd4c563a89618b1acf5e9/href</a></iframe><p>As seen from the video, the picture is executed in a stroke technique with “pure” colors, that is, without a gradient.</p><p>After the return of our manipulator to life by the KUKA engineer, work on the software was resumed, since there was no ready software at that time. This stage of software development and testing was completed <strong>by May 2018</strong>.</p><h4><strong>#4.</strong></h4><p>At this point, everything worked in the simulation, all the high-level algorithms worked — it was necessary to make the robot start drawing. This was the main task of the <strong>fourth stage</strong> in the development of the project. The movement trajectory for the robot was ready, it was also clear how it should move to get the desired image. The only “one small problem” remained — implementation.</p><h4><strong>#5.</strong></h4><p>By <strong>June-July 2018</strong>, the robot-artist drew his first hieroglyph in the stroke technique using the <a href="http://wiki.ros.org/ipa_kuka_rsi">RSI</a> protocol. When transmitting data using this protocol, the manipulator performed a trajectory with a tapping, and sometimes turned off. There were many reasons for this. For example, the distance between the points should have been quite small, less than a millimeter, and the time between packages should have been 4ms.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hNREuYAoJFlTXXflYBHKDQ.jpeg" /><figcaption><strong><em>Right to left: 1 and 2 characters drawn by Gaka-Chu.</em></strong></figcaption></figure><p>Around the same time, the developers of <a href="https://github.com/ros-industrial">ROS industrial</a> found a radically new and very interesting way to send trajectories from ROS, the use of which in our project made the manipulator movements smoother. The <a href="http://wiki.ros.org/kuka_eki_hw_interface">EKI</a> protocol allowed us to expand the functionality and simplified the process of transferring the trajectory to the manipulator, so after the first tests on the canvas we switched to it.</p><h4><strong>#6.</strong></h4><p>In <strong>September 2018</strong>, the so-called “economization” of the robot, that is, its transformation into an autonomous economic agent according to the basic idea of ​​the AIRA project, became the final, <strong>sixth stage</strong>:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FLr4-_rUS97U%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DLr4-_rUS97U&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FLr4-_rUS97U%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/8e1b9d5633665a01d8817ecab9cfe0d8/href">https://medium.com/media/8e1b9d5633665a01d8817ecab9cfe0d8/href</a></iframe><p>This would mean that our robot-artist can carry out economic interactions (for example, make sales transactions) as an independent economic unit.</p><blockquote>“This is great as in the modern world in order to interact with a robot and not think about it, a good concept would be to transfer independent economic opportunities to the robot, presenting it as a separate economic agent. This will allow it to independently carry out the economy. In theory, a robot with minimal basic knowledge of economics, given by algorithms, can act more intelligently than an economically uneducated human”, — Alexey shares his thoughts.</blockquote><p>Within this stage, several dapps (decentralized applications) were developed — an application for the robot itself, an application for simple economic interaction (selling a picture), and an application for auction. At the same time, the robot application and both sales applications were linked to each other. One of the Airalab co-founders, Alexander Starostin, took an active part in the development of the dapps. Thus, as of <strong>December 2018</strong>, the status of the project can be designated as completed.</p><p>In the next final part of the article about the robot-artist Gaka-Chu, Alexey and I will talk about the hard-technical part of the project, algorithms and work with ROS industrial. Subscribe to the blog and stay tuned to our social networks.<br><a href="https://t.me/robonomics"><strong>Click to discuss the article</strong></a><strong>.</strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e990d15e0447" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/gaka-chu-the-robot-artist-part-2-stages-e990d15e0447">“Gaka-Chu. The Robot-artist”. Part 2. Stages</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[“Gaka-Chu.]]></title>
            <link>https://medium.com/airalab/gaka-chu-d2f6cfa61390?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/d2f6cfa61390</guid>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[poc]]></category>
            <category><![CDATA[robonomics]]></category>
            <category><![CDATA[robotics]]></category>
            <category><![CDATA[robot-art]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Fri, 18 Jan 2019 16:39:42 GMT</pubDate>
            <atom:updated>2019-01-22T15:55:01.558Z</atom:updated>
            <content:encoded><![CDATA[<h3>“Gaka-Chu. The Robot-artist” project: small clumsy KUKA manipulator living in the big world of serious industrial robots</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*QtiBwt7w4g6c4HlUAv2Mfg.jpeg" /></figure><p><em>Modern technologies aim to improve human life, make it more comfortable and more fun, free up some time for creativity, creating new, conducting experiments. These thoughts led the Airalab development team to the idea of ​​conducting an experiment showing the full potential of developing modern technologies and in particular the capabilities of the </em><a href="https://robonomics.network/en/"><em>Robonomics platform</em></a><em>. This experiment is the Robot-artist. Read more details below.</em></p><h4>What led us to the idea of this project?</h4><p>The idea of ​​the Robot-artist in this form that the project exists now did not come immediately. <a href="https://www.rosbank.ru/en/">Rosbank</a> became the mastermind behind this project. Together with <a href="https://www.fanuc.eu/ru/en">FANUC</a>, it presented a project of an industrial robotic manipulator, painting on canvas with oil paints using a brushstroke technique:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FLg-9HoGXrM4%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DLg-9HoGXrM4&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FLg-9HoGXrM4%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/b31662124f5ccf739c1f614e2d682408/href">https://medium.com/media/b31662124f5ccf739c1f614e2d682408/href</a></iframe><p>Lead engineer of the Robot-artist project, Alexey Ovcharov, did find the idea of ​​teaching an industrial manipulator to draw with paints an interesting challenge.</p><h4>Expectations vs. Reality: what are the objectives of the project</h4><p>Initially, the project engineers had a rather vague objective — to interpret the robot’s view of the world as a picture. Further, the objective became a bit more specific — the robot should draw a certain image ordered through the <a href="https://en.wikipedia.org/wiki/Blockchain">blockchain</a>. Then we got the idea to add neuronets to solving this task in order to analyze the information, interpret and depict it graphically.</p><p>Thus, the global challenge was to process and analyze a situation around the world, for instance, to analyze so-called “hot” videos on YouTube and create a picture based on this analysis.</p><p>Gradually, it became clear that the processing of information from all over the world is rather a laborious process that requires a lot of time, so over time the task has been simplified. In which way? After the manipulator was adapted to work with certain software, a small part that allowed Gaka-Chu to process the text was added.</p><p>And finally one of the latest additions to the initial objective was the positioning of the Robot-artist as an independent economic agent using the AIRA technology stack.</p><blockquote>“Generally speaking, there were a bit more expectations at the beginning. It was expected that there would be some kind of color picture, similar to this one that was drawn by a human. Of course, no one expected a highly artistic result from the robot, such as a watercolor landscape or a still-life in oil, but we assumed that it would be some abstract image in the spirit of modern art. But on the other hand, I am very pleased that we managed to achieve good results in depicting the text, because this task, as I already said, is not easy and is not well implemented in the world for such manipulators of consistent kinematics ”, — shared Alexey.</blockquote><p>Moving along the line is absolutely alien for a robot. It is an extremely difficult task to make the robot move along a flat surface, observing a given trajectory of movement and creating a smooth line. The project’s engineers faced a non-trivial task, towards which they achieved impressive results that you can see on the recent works of Gaka-Chu:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/965/1*Z4cTMMvAPNM-IaVNwYMktA.jpeg" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1013/1*1SoVP2IcXd1fT8e8dnGCBA.jpeg" /><figcaption><strong>Recent Gaka-Chu’s pictures.</strong></figcaption></figure><p>Also you can watch a video where our artist is working:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FxSD_lsrAA0I%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DxSD_lsrAA0I&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FxSD_lsrAA0I%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/63bf9eb159eff20ac128fe6715e29a04/href">https://medium.com/media/63bf9eb159eff20ac128fe6715e29a04/href</a></iframe><h4>Difficulties in the work on the project</h4><ol><li><strong>The real time mode</strong>. It is necessary to interact with the manipulator in real time, i.e. a specific amount of time must be allocated for a specific process. The problem is that no computer can guarantee a limited time for completing the process, but this is very important while you are working with an industrial robot. Much time was spent on setting up this part of the work. For this, a patch for Linux <a href="https://stackoverflow.com/questions/26311757/what-is-rt-preempt-how-is-it-different-from-preempt-rt-does-these-mean-same-re">rt preempt</a> was used.</li><li><strong>Image processing</strong>. The difficulty was in the description of the image to be performed by the manipulator. In the case with brush strokes, this is not such a difficult task as in drawing with smooth lines.</li><li><strong>Transferring the specified trajectory from an external PC to the manipulator controller</strong>. To implement the image given by the trajectories, it is necessary to transfer it to the robot. The <a href="https://rosindustrial.org/">ROS industrial</a> development team has created a new ROS package for <a href="http://wiki.ros.org/kuka_rsi_hw_interface">RSI</a> and <a href="http://wiki.ros.org/kuka_eki_hw_interface">EKI</a> communication interfaces, so that now it is possible to monitor the manipulator’s status from an external device and also control the robot.</li><li><strong>Description of the drawing surface</strong>. To create a picture, the robot needs to know the exact parameters of the surface, for example, in order for the brush to move with a certain pressure. Any surface, whether it is a table, where the robot and the canvas are installed, a wall or an easel, has some irregularities, angles of inclination, etc., which greatly complicates its description for the robot. This problem was solved only partially by installing the depth camera on the manipulator to obtain the equation of the plane.</li><li><strong>Creating a gradient fill (smooth color transition)</strong>. At the stage of creating hieroglyphs, we do not really need smooth transitions, but with the development of the project, we may solve this problem as well.</li><li><strong>Operational safety</strong>. Last, but not least, difficulty when working with industrial manipulators. I think we do not need extra comments here as we all understand that the small KUKA manipulator, if carelessly or improperly handled, can easily harm the engineer.</li></ol><h4>Other Robot-artist projects and Gaka-Chu’s specific features</h4><p>As mentioned above, the joint project of Rosbank and FANUC inspired the team to create our Robot-artist. But in general, the idea of ​​drawing robots is not so new. Since about the 2000s, various companies have tried to implement this idea in a plenty of ways. One of the first projects in which the robot repeated after the human painting the picture appeared. Now there are entire <a href="https://robotart.org/">competitions for roboteers</a> working with drawing robots: all over the world, robot-artists create their paintings and send them to the jury of the competitions. The winning team receives a prize of $ 100,000 — the prize worth fighting for.</p><p>The main specific features of Gaka-Chu, which distinguish it from other projects with drawing robots, are that it independently analyzes the information and generates an image on its basis, and also can independently sell its paintings, i.e. Gaka-Chu is an autonomous economic agent. In addition, Gaka-Chu does not just paint pictures — he paints the text artistically that in itself is a difficult task as from the point of view of algorithms it is rather difficult to “shrink” the text so that the robot can reproduce it.</p><blockquote>“Our Robot-artist can be considered a good calligrapher, based on what I saw in the world,” — says Alexey.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*gO2B2uSOVcQLkZCL5u4osQ.jpeg" /></figure><h4>How to buy a picture?</h4><p>In order to purchase the picture of Gaka-Chu, the user will need the following:</p><ul><li>device with access to the Internet;</li><li>cryptocurrency wallet;</li><li><a href="https://metamask.io/">Metamask</a> browser extension;</li><li>joining the <a href="https://t.me/robonomics">Airalab telegram chat</a>.</li></ul><p>In each case, the purchasing process can be unique, so to begin with, the potential purchaser of the picture should contact some of the developers in the chat with a request to accompany the purchase process. Order is done through <a href="https://dev.aira.life/gaka-chu/#/">dapp</a>. The customer and Gaka-Chu deal through a liability smart contract, according to which the robot undertakes to draw a picture and send it to the customer, and the customer undertakes to transfer the necessary amount of tokens to the robot’s account. With the help of blockchain technology, the sale and purchase transaction takes place directly between the customer (human) and the seller (robot), bypassing intermediaries.</p><h4>What does the project demonstrate?</h4><p>For roboteers this project is interesting from the point of view of working with an industrial manipulator in order to get a non-standard result. And what can a person distant from robotics, programming and high technologies see?<br>The project of the Airalab team demonstrates that a robotic unit — in this case, an industrial KUKA manipulator — can, like a human, be a participant in economic relationships. In addition, the project raises a number of philosophical questions, the relevance of which increases on the wave of the upcoming total robotization in various spheres of human life.</p><p>Using the example of this project, the team raises the issue of intellectual property rights. Who owns the picture that the robot painted? In most cases, the answer will be “the one who taught him to draw”. And what if the engineer who has programmed the robot, waives ownership of the robot’s work? What if the robot itself “invented” this picture — interpreted the information obtained in this way? Here finally the following question arises — what is mentality and is it appropriate to use this term in the context of a robot. And what if the robot has its own wallet with cryptocurrency (the only currently available payment method for robots) and can independently sell the results of its work? Can it be considered the author and have ownership in this case? There is something to think about, isn’t it right?</p><blockquote>“Using the example of the Robot-artist project, we wanted to show that a robot can have ownership, and this is quite normal. That is, the robot generally can create, and this already more suites philosophical thoughts — what does it mean to “create”? People still hardly agree with this, but there is a reason why — people do not yet understand what “mentality” is, and they think that mentality for a “non-human” is something out of the ordinary”, — Alexey considers.</blockquote><p>I would like to finish the story of the “Gaka-Chu. The Robot-artist” project on this philosophical note. What is mentality? What is creativity? Who owns the result of the activities of inanimate creatures such as robots? Join us in social networks — let’s discuss.</p><ul><li><a href="https://t.me/robonomicsru">Telegram</a></li><li><a href="https://twitter.com/AIRA_Robonomics">Twitter</a></li><li><a href="https://www.youtube.com/channel/UCrSiho1uB-1n6F8cZpCLhjQ">YouTube</a></li><li><a href="https://www.facebook.com/aira.robonomics">Facebook</a></li></ul><p>PS: in the next part of the article we will talk about the stages of work on the project — subscribe, so you won’t miss the sequel :)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d2f6cfa61390" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/gaka-chu-d2f6cfa61390">“Gaka-Chu.</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to participate in a test TGE XRT using Metamask and Etherscan?]]></title>
            <link>https://medium.com/airalab/how-to-participate-in-a-test-tge-xrt-using-metamask-and-etherscan-865febe71862?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/865febe71862</guid>
            <category><![CDATA[etherscan]]></category>
            <category><![CDATA[robonomics]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[tutorial]]></category>
            <category><![CDATA[metamask]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Mon, 19 Nov 2018 12:59:53 GMT</pubDate>
            <atom:updated>2018-11-20T15:00:56.616Z</atom:updated>
            <content:encoded><![CDATA[<p><em>Not long ago Sergey Lonshakov announced in </em><a href="https://blog.aira.life/developers-diaries-august-september-2018-4c9862033908"><em>Airalab blog</em></a><em> the upcoming TGE (Token Generation Event). In my article, I want to share with you one unusual way to conduct Token Sale using Etherscan. Why unusual? Etherscan is one of the default interfaces available for free to communicate with contracts that everyone used to work with through Parity or MyEtherWallet. Recently, Etherscan got two new functions — </em><strong><em>readContract </em></strong><em>and </em><strong><em>writeContract</em></strong><em>. These functions are especially interesting for those projects that do not yet have interfaces and dapp for conducting Token Sale. Usually in such cases Parity is used; Metamask is useless without a dapp, because with its help you can only send transactions. Let’s move on to the guideline itself.</em></p><h3>The Guideline</h3><p>1. Open <a href="https://etherscan.io/address/auction.3.robonomics.eth">an auction contract</a> on the Etherscan website</p><p>2. Go to the <strong>writeContract </strong>tab:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*DQGWSrvMJN_Siss0" /></figure><p>3. Connect Metamask. To do this, you should first unlock it. Then click <strong>“Connect with Metamask”</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ca-tnF6Rwn8gt51w" /></figure><p>4. In the <strong>bid </strong>field indicate the amount in ETH that we want to transfer and the address to which we will receive the tokens. Click <strong>Write</strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*W2Nc_zqOxpMyHdGV" /></figure><p>5. A Metamask confirmation pop-up window will appear:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*NK0GQIGbLZlOc7T3" /></figure><p>6. Using <strong>“View your transaction”</strong> button you can check the status of the transaction:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*ZZ1u05XWcazMTZBK" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*Wi_2rwPaVIb5G_zi" /></figure><p>7. On the <strong>readContract </strong>tab you can see how much we transferred to the auction contract:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*IWggTSKMi6bpK8gH" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*mLXymG0ZUd3WGngF" /></figure><blockquote>? The difference in the amount sent and received is 2 times, because 2 transactions were sent from my account.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*3zH_8lEdafVEgWQG" /></figure><p>8. To get XRT, after the end of the auction in the tab <strong>writeContract </strong>in the field <strong>claimTokens </strong>specify your address.</p><blockquote>? How to understand that the auction is over? In the contract on the <strong>readContract </strong>tab there are two properties <strong>endTime </strong>and <strong>finalPrice</strong>, now they are both equal to 0. When the TGE ends new values ​​appear in them. And the auction itself will end when the planned amount of ETH is collected — the <strong>ceiling </strong>property (in this case 40 ETH), and the <strong>totalReceived </strong>field shows the amount that has already been collected.</blockquote><p>Now you know how to use Etherscan for Token Sale :)</p><p><strong>On the 21th of November visit our website </strong><a href="https://robonomics.network/en/"><strong>robonomics.network</strong></a><strong>, complete the survey and participate in the general public rehearsal of TGE XRT starting November, 28!</strong></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=865febe71862" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/how-to-participate-in-a-test-tge-xrt-using-metamask-and-etherscan-865febe71862">How to participate in a test TGE XRT using Metamask and Etherscan?</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Robonomics Winter School. Getting acquainted with AIRA]]></title>
            <link>https://medium.com/airalab/robonomics-winter-school-getting-acquainted-with-aira-c5593539b4fd?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/c5593539b4fd</guid>
            <category><![CDATA[airalab]]></category>
            <category><![CDATA[ethereum]]></category>
            <category><![CDATA[robonomics]]></category>
            <category><![CDATA[aira]]></category>
            <category><![CDATA[tutorial]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Fri, 02 Nov 2018 12:18:59 GMT</pubDate>
            <atom:updated>2018-11-07T13:43:46.129Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*j8pFrWrsSfkAbu8qgDBpOA.jpeg" /></figure><p><em>Not long ago, the Robonomics network architect, Sergey Lonshakov, announced the first online Robonomics Winter School. We will suggest participants to go through a 15-day training program, after which everyone will build their own sensor network (details can be found</em><a href="https://blog.aira.life/first-robonomics-winter-school-782ba66811d3"><em> here</em></a><em>). As a community support assistant of Airalab team, I will publish a series of “cheat sheets” for the future participants. You have a unique opportunity to look through the online-school program in advance, and also to improve it with the help of your comments and remarks — you can write</em><a href="https://t.me/joinchat/GKXpc0v8rerK9h67TDW9kA"><em> here</em></a><em>.</em></p><h4><strong>Introduction</strong></h4><p><em>*to go to the essence — scroll down.</em></p><p>Airalab R&amp;D team provides technologies in order to connect Smart Сities and Industry 4.0 with Blockchain. <a href="https://robonomics.network/en/">Robonomics network</a> will allow combining cyber-physical systems (CPSs) using a market mechanism, which in turn will provide an opportunity to realize a planetary system of mass production of goods and services directly integrated into the social economy. <a href="https://aira.life/ru/">AIRA</a> (Autonomous Intelligent Robot Agent) is a Robonomics network client that helps engineers to design smart cities and light-out factories using robots as a services in Industry 4.0. In this article we will get acquainted with AIRA from the practical point, in particular, we will try to setup AIRA image and test basic functions.</p><h4><strong>The Essence</strong></h4><p>Let’s start. AIRA image is deployed on a virtual machine (VM). So if you don’t have the VM on your laptop,<a href="https://www.virtualbox.org/"> download and set it up</a>. Then you should download the latest AIRA version from<a href="https://github.com/airalab/aira/releases"> GitHub</a>.</p><p>To run the client, you should import .ove format file in VirtualBox:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/956/1*rmZ8niS71RedFyKkdQpNGA.png" /><figcaption><strong><em>As you can see from the picture above, you can use Ctrl+I to import.</em></strong></figcaption></figure><p>After import is finished launch the VM. Right after the Ethereum node is sync, AIRA client is ready for work. AIRA creates a new address for you, it is situated here:</p><blockquote><strong>/var/lib/parity/foundation-env.sh</strong></blockquote><p>.json file with your account you can find here:</p><blockquote><strong>/var/lib/parity/.local/share/io.parity.ethereum/keys/</strong></blockquote><blockquote>Why do you need this address? This address is used for singing all messages, also it is an unique identifier of a network agent.</blockquote><p>First, let’s try to listen to the channel:</p><blockquote><strong>rostopic echo /liability/infochan/incoming/ask</strong></blockquote><blockquote>We use the ipfs broadcast channel for messaging because it is<br>fast, convenient and free. What does it mean to listen to the channel? To<br>listen to the channel means to see the message sent to it, and thus understand<br>that the channel is “alive”. You can only listen to the messages that are sent<br>to the channel after the rostopic echo command is launched. The work of network is built on messaging with the network, so to understand the process it is useful to get a message, see how information is transmitted, what are the<br>fields in the message. Read more about the meaning of the fields in one of the<br>following publications.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/798/1*R3oX-2mwYPmIywpSWa_BJA.png" /></figure><h4><strong>Basic usage</strong></h4><p>Once you launch the client several ros nodes will already be on the run*. To see the list of robonomics communication stack nodes use <strong><em>rosnode list</em></strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/799/1*w9MD7IQWPdB2pUp6sOZzuQ.png" /></figure><blockquote>*It means that there are already all necessary interfaces for Robonomics network.</blockquote><p>· <strong><em>/liability/executor</em></strong> — gets rosbag file from IPFS and plays it.</p><p>· <strong><em>/liability/infochan/channel</em></strong> — is responsible for offer, demand and result messages. It catches messages from the channel and sends signed messages back.</p><p>· <strong><em>/liability/infochan/signer</em></strong> — offers services for signing offer, demand and result messages.</p><p>To see the list of robonomics stack topics use <strong><em>rostopic list</em></strong>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/798/1*YqnyPVTLEhxGcCw6I_4b2A.png" /></figure><p>The most important topics for us are:</p><ul><li>/liability/incoming — when a new liability is created, this topic publishes Ethereum address of the contract;</li><li>/liability/result — this topic is for publishing results. But don’t publish a result directly to this topic! Use a service instead;</li><li>/liability/infochan/incoming/* — a CPS gets information about offer, demand or result from corresponding topics;</li><li>/liability/infochan/signing/* — a CPS sends offer, demand or result messages to corresponding topics.</li></ul><p>Now when we know AIRA basic functions, let’s say hello to AIRA.</p><p>You should just launch a preinstalled package <strong><em>hello_aira</em></strong> using <strong><em>rosrun hello_aira hello_aira.</em></strong></p><p>We’ve launched our agent. It will wait for a demand message. Go to <a href="https://airalab.github.io/robonomics_tutorials/">dapp</a> and press Order:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KbvXMwwzsi4AKYPLBTkVMQ.png" /></figure><p>Now go back to the console and see the result:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/794/1*oYsQAaSa4coLlEiMc7CsWQ.png" /></figure><p>Through this lesson, we learned about AIRA and its basic functions, which will be useful for performing the following tasks of the Winter School and building a sensor network. Subscribe to the<a href="https://blog.aira.life/"> blog</a>, join the<a href="https://t.me/joinchat/GKXpc0v8rerK9h67TDW9kA"> chat</a> of the future students of Robonomics — let’s study together :)</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c5593539b4fd" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/robonomics-winter-school-getting-acquainted-with-aira-c5593539b4fd">Robonomics Winter School. Getting acquainted with AIRA</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Blockchain and chemistry. Is there a common ground? Actual use-cases]]></title>
            <link>https://medium.com/airalab/blockchain-and-chemistry-is-there-a-common-ground-actual-use-cases-8ad59a3a5c92?source=rss-78f72b687f5f------2</link>
            <guid isPermaLink="false">https://medium.com/p/8ad59a3a5c92</guid>
            <category><![CDATA[poc]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[chemistry]]></category>
            <category><![CDATA[airalab]]></category>
            <category><![CDATA[robonomics]]></category>
            <dc:creator><![CDATA[Mariia Vasileva]]></dc:creator>
            <pubDate>Thu, 16 Aug 2018 08:35:06 GMT</pubDate>
            <atom:updated>2018-12-05T19:39:45.632Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*SipuOvCM5aOJFMb2iYJCrw.png" /></figure><p><em>For many people, blockchain is some kind of incomprehensible mythical thing that everyone is talking about, but no one has seen it. In fact, blockchain technology is the way of storing data that allows anyone to see this data, know that it is immutable, and therefore trust it. This is what makes blockchain a unique technology, applicable to a variety of both existing and futuristic cases. Scenarios of some experiments that the Airalab team of developers offers are described in our blog. But today I want to talk about how you can use blockchain technology in the context of the chemical industry.</em></p><p>Over the last few months, the Airalab team conducted a collaborative project with the chemical laboratory of the ITMO University in St. Petersburg. This project was overseen by devOps of the Airalab team Vadim Manaenko.</p><h4>The background</h4><p>In 1814, Sir Humphry Davy, professor of the Royal Society of London, discovered a substance such as chlorine dioxide (ClO2) from the reaction between sulfuric acid and potassium chlorate. This chemical compound, which has a yellow-green color in the aqueous solution and is highly soluble, is a strong oxidant and is safe for human health. Besides, ClO2 is a powerful disinfectant: when bacteria or other harmful microorganisms enter the cell membrane, chlorine dioxide reacts with the organic substances of the cell membrane, which disrupts the metabolic processes in the cell. The most remarkable thing is that the cells of these harmful microorganisms cannot protect themselves from a sufficiently specific exposure to this substance.</p><p>Later, Japanese chemists suggested using chlorine dioxide not only for bleaching cellulose, sterilizing rooms, swimming pools, water, etc., but also to protect people from bacteria and viruses that are the causative agents of various diseases. This idea became feasible due to the selection of the <strong>correct substance</strong> <strong>concentration </strong>(this is a very important point, we will get back to it in this article). A lot of drugs with a similar effect appeared based on this idea — they allow people who wear a special “badge” with chlorine dioxide on their chest, not to suffer, for example, during an epidemic of flu or other viral diseases.</p><h4>And how does blockchain fit into this?</h4><p>You may ask. And now we will get back to the issue of concentration. With the concentration of something, there are always 3 options:</p><p>· Lower than we need;</p><p>· Exactly what we need;</p><p>· Too much.</p><p>What does it mean in the context of chlorine dioxide?</p><p>Everything is clear with the correct concentration — viruses around the badge holder are dying, like cockroaches from dichlorvos, everyone is happy and healthy. If the concentration of the substance is below the calculated rate, then we can just hope for a placebo effect. Otherwise, we wear a useless piece on our neck and hope to fight the infection with the power of thought. And what if the concentration is higher than the calculated rate? This can be quite a dangerous situation. The viruses around the object are still perfectly eliminated, but the object itself inhales the highly concentrated ClO2 vapors and is gradually poisoned by them.</p><p>The final of this story could have been unsuccessful or even tragic if the blockchain technology had not come to play.*</p><blockquote>*NB: Of course, blockchain will not protect the consumer from all possible risks associated with the concentration of the product, but, at least, will not allow the facts of verification disappear or be changed by a dishonest producer. So the responsibility of the manufacturer will grow.</blockquote><p>Let’s remember that blockchain allows us to trust the data, then add this information on the current case with the production of chlorine dioxide and get the following picture:</p><p>The manufacturing company produces a batch of goods, someone (in the technical part of the article we will figure out who) takes a random unit from these goods, checks the concentration of the substance and publishes the results of the verification to blockchain. At any time the consumer can obtain information about the good that cannot be changed or deleted. This partly answers the question about the benefits: the consumer’s benefit is obvious — before buying a product, they can get information about its quality. And what is the benefit of the manufacturer?</p><h4>About benefits</h4><p>As I mentioned above, after the concept of using chlorine dioxide in the context of health care was discovered, many similar drugs appeared in different countries, for example:<a href="https://nanoclo2.ru/"> nanoclo2</a>,<a href="http://b-r-f.ru/"> barrier reef</a>,<a href="https://blokator-virusov.ru/"> airdoctor</a> and many others all over the world. How do companies make their product more competitive? I’m not going to talk about advertising, marketing, branding, etc. It’s about the open production process, the availability of information about, for instance, substance concentration. This information anyway exists, but for some reason in our age of information is not used, but in fact with its help you can create an additional value of a product. Today, the consumer is willing to pay for reliable information. There’s one more reason for you to use blockchain in production.</p><h4>About the product, the customer and the issues</h4><p>Representatives of the chemical laboratory of the ITMO University appealed to us (<a href="https://robonomics.network/en/">Airalab</a>) with the issue that is clear from the abovementioned: to develop a quality system for the production of a chemical.</p><p>From the laboratory side the following tasks were solved: development of a unique sorbent, selection of parameters and concentrations of active components, modeling of adsorption-desorption processes (this was done in the structures of the chemical-biological cluster); production prototyping, development of mock-ups, presentations and videos, including a pre-series release were provided by<a href="https://nanodoctor.pro/"> InnoColloids</a>.</p><blockquote>“To solve this issue, an autonomous cyber-physical system (CPS) that verifies the concentration of a random packet from a batch was developed. The spectrograph is used for verification. During the testing, the verification was carried out manually, but, with the appearance of the production line, it can be automated with the help of a manipulator,” <em>— Vadim Manaenko said.</em></blockquote><p>It explains who this unknown “someone” is doing the verification on the production, and why he can be trusted (because robots do not know how to lie ©).</p><p>A little bit more details about the product, which, by the way, is called NanoDoctor, you can learn from the video prepared by InnoColloids:</p><iframe src="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FomsZjNKZoGA%3Ffeature%3Doembed&amp;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DomsZjNKZoGA&amp;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FomsZjNKZoGA%2Fhqdefault.jpg&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;type=text%2Fhtml&amp;schema=youtube" width="854" height="480" frameborder="0" scrolling="no"><a href="https://medium.com/media/11ee5108dab4af67d2884d77b45a11e3/href">https://medium.com/media/11ee5108dab4af67d2884d77b45a11e3/href</a></iframe><h4>A little about technical details. Or how does the blockchainization of technological process work?</h4><p>So, we have an autonomous CPS that performs concentration testing with the help of the spectrograph. What happens next?</p><p>Let’s start from the economic part of the<a href="https://aira.life/"> AIRA project</a>: CPS integrates into the Robonomics network. The quality control system is an autonomous economic agent that puts on the market one single service — quality control.</p><p>I guess it would be better if you check<a href="https://blog.aira.life/chemistry-quality-control-system-behind-the-scene-b6db062343ac"> the article for engineers by Vadim Manaenko</a> as he has already described the technical part.</p><h4>What are the results?</h4><p><strong>In fact: </strong>Within the framework of this project, the quality control system for the chemical was designed and launched. Note that the architecture has turned out to be universal. To implement such a system to another production, it is enough to change only the algorithm of work after receiving the message <strong>‘task’</strong>. It means that the system that we have developed can be implemented on any other production (if you are interested in this control system, please, find the contacts in the end of the article).</p><p><strong>If you consider in the context of economic results: </strong>They still exist only in perspective. Particularly: it is planned to mass-produce products with sales through retail, and for that purpose the full certification procedure is launched and the search for investment partners is being conducted. The start of sales is planned for autumn, the drug is planned to be sold through pharmacy chains.</p><p><strong>What’s more? </strong>Due to the implementation of this project, a new quality of the product such as its history arose. Now the manufacturer can sell the production process data, i.e. to receive the additional income, using information resources that they have already got.</p><h4>Coordinates</h4><p>• Learn more about Airalab technologies, ask for the similar project for your production: engeneering@aira.life</p><p>• Ask the project developer Vadim Manaenko: vadim.manaenko@aira.life, Telegram:<a href="https://t.me/vourhey"> @vourhey</a></p><p>• Ask the author: mv@aira.life, Telegram:<a href="https://t.me/mariavasss"> @mariavasss</a></p><p>Thank you for reading to the end, I will be grateful for the feedback. Stay tuned.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8ad59a3a5c92" width="1" height="1" alt=""><hr><p><a href="https://medium.com/airalab/blockchain-and-chemistry-is-there-a-common-ground-actual-use-cases-8ad59a3a5c92">Blockchain and chemistry. Is there a common ground? Actual use-cases</a> was originally published in <a href="https://medium.com/airalab">Robonomics Network by Airalab</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>