44 research outputs found

    Sharing Human-Generated Observations by Integrating HMI and the Semantic Sensor Web

    Get PDF
    Current “Internet of Things” concepts point to a future where connected objects gather meaningful information about their environment and share it with other objects and people. In particular, objects embedding Human Machine Interaction (HMI), such as mobile devices and, increasingly, connected vehicles, home appliances, urban interactive infrastructures, etc., may not only be conceived as sources of sensor information, but, through interaction with their users, they can also produce highly valuable context-aware human-generated observations. We believe that the great promise offered by combining and sharing all of the different sources of information available can be realized through the integration of HMI and Semantic Sensor Web technologies. This paper presents a technological framework that harmonizes two of the most influential HMI and Sensor Web initiatives: the W3C’s Multimodal Architecture and Interfaces (MMI) and the Open Geospatial Consortium (OGC) Sensor Web Enablement (SWE) with its semantic extension, respectively. Although the proposed framework is general enough to be applied in a variety of connected objects integrating HMI, a particular development is presented for a connected car scenario where drivers’ observations about the traffic or their environment are shared across the Semantic Sensor Web. For implementation and evaluation purposes an on-board OSGi (Open Services Gateway Initiative) architecture was built, integrating several available HMI, Sensor Web and Semantic Web technologies. A technical performance test and a conceptual validation of the scenario with potential users are reported, with results suggesting the approach is soun

    Using SCXML to integrate semantic sensor information into context-aware user interfaces

    Get PDF
    This paper describes a novel architecture to introduce automatic annotation and processing of semantic sensor data within context-aware applications. Based on the well-known state-charts technologies, and represented using W3C SCXML language combined with Semantic Web technologies, our architecture is able to provide enriched higher-level semantic representations of user’s context. This capability to detect and model relevant user situations allows a seamless modeling of the actual interaction situation, which can be integrated during the design of multimodal user interfaces (also based on SCXML) for them to be adequately adapted. Therefore, the final result of this contribution can be described as a flexible context-aware SCXML-based architecture, suitable for both designing a wide range of multimodal context-aware user interfaces, and implementing the automatic enrichment of sensor data, making it available to the entire Semantic Sensor We

    Modeling, Simulation and Emulation of Intelligent Domotic Environments

    Get PDF
    Intelligent Domotic Environments are a promising approach, based on semantic models and commercially off-the-shelf domotic technologies, to realize new intelligent buildings, but such complexity requires innovative design methodologies and tools for ensuring correctness. Suitable simulation and emulation approaches and tools must be adopted to allow designers to experiment with their ideas and to incrementally verify designed policies in a scenario where the environment is partly emulated and partly composed of real devices. This paper describes a framework, which exploits UML2.0 state diagrams for automatic generation of device simulators from ontology-based descriptions of domotic environments. The DogSim simulator may simulate a complete building automation system in software, or may be integrated in the Dog Gateway, allowing partial simulation of virtual devices alongside with real devices. Experiments on a real home show that the approach is feasible and can easily address both simulation and emulation requirement

    City Data Fusion: Sensor Data Fusion in the Internet of Things

    Full text link
    Internet of Things (IoT) has gained substantial attention recently and play a significant role in smart city application deployments. A number of such smart city applications depend on sensor fusion capabilities in the cloud from diverse data sources. We introduce the concept of IoT and present in detail ten different parameters that govern our sensor data fusion evaluation framework. We then evaluate the current state-of-the art in sensor data fusion against our sensor data fusion framework. Our main goal is to examine and survey different sensor data fusion research efforts based on our evaluation framework. The major open research issues related to sensor data fusion are also presented.Comment: Accepted to be published in International Journal of Distributed Systems and Technologies (IJDST), 201

    Proceedings of the 2nd EICS Workshop on Engineering Interactive Computer Systems with SCXML

    Get PDF

    Modeling and Formal Verification of Smart Environments

    Get PDF
    Smart Environments (SmE) are a growing combination of various computing frameworks (ubiquitous, pervasive etc), devices, control algorithms and a complex web of interactions. It is at the core of user facilitation in a number of industrial, domestic and public areas. Based on their application areas, SmE may be critical in terms of correctness, reliability, safety, security etc. To achieve error-free and requirement-compliant implementation, these systems are designed resorting to various modeling approaches including Ontology and Statecharts. This paper attempts to consider correctness, reliability, safety and security in the design process of SmE and its related components by proposing a design time modeling and formal verification methodology. The proposed methodology covers various design features related to modeling and formal verification SmE (focusing on users, devices, environment, control algorithms and their interaction) against the set of the requirements through model checking. A realistic case study of a Bank Door Security Booth System (BDSB) is tested. The results show the successful verification of the properties related to the safety, security and desired reliable behavior of BDSB

    On the orchestration of operations in flexible manufacturing

    Get PDF
    Tese de doutoramento em Engenharia Mecânica (Controlo e Gestão) apresentada à Faculdade de Ciências e Tecnologia da Universidade de CoimbraDomínio A capacidade de produzir bem é a chave da riqueza. Uma boa produção concretiza-se pela transformação competitiva de matérias-primas em produtos de qualidade para o mercado global. Tal transformação inclui uma série de operações coordenadas de modo a obter a produtividade que permite o aumento da competitividade. Embora algumas operações possam requerer pessoal especializado, a tendência é para uma crescente automatização. A coordenação das operações automatizadas é também automatizada (através de uma variedade de transportadores, comunicação digital, etc.). Contudo, e embora a produção seja automatizada, a configuração do equipamento é feita manualmente. Situação A necessidade de automatização foi inicialmente sentida e aplicada na produção de longas séries, como no caso da indústria automóvel. Com a necessidade de redução de custos e aumento de flexibilidade, a inclusão de máquinas/equipamentos controlados por computador, assim como de interligações por computadores/redes tem sido extensiva. O aumento de software nestes sistemas, as restrições físicas e as (indesejáveis) interconecções lógicas conduzem a um aumento da complexidade, que em empresas de produção em grande escala é obviado por especialistas. O aumento na procura de produtos personalizados e a rapidez para a sua comercialização determinam a necessidade de uma produção flexível. Contudo, a referida indesejável complexidade constitui um grande obstáculo para o recurso a soluções (semi)-automatizadas, e postos de trabalho (de alta qualidade) são deslocados para países de mão-de-obra mais barata. O caso mais difícil prende-se com a utilização de robôs (que é o tipo de máquina mais flexível) nas empresas mais flexíveis, como sejam as Pequenas e Médias Empresas (PMEs). Deste modo, as condições para a utilização de robôs (juntamente com outro tipo de equipamento) em PMEs (incluindo operações manuais e configuração) representam o maior desafio, uma vez que os sistemas técnicos têm de ser estruturados de forma a suportarem a desejada flexibilidade. À semelhança da incapacidade de uma boa gestão em compensar a falta de competência em actividades como a do comércio ou da investigação cientifica, as etapas de produção têm de ser apropriadamente construídas e mantidas. Estas últimas representam aquilo em que o produtor se deve concentrar e especializar. Assim, sejam quais forem os avanços que facilitem a produção, as práticas de produção competitiva deverão ser mantidas. Especificamente, processos de trabalho com conhecimentos valiosos não devem ser prejudicados por detalhes técnicos irrelevantes. Novas tecnologias que possam aumentar a competitividade e/ou melhorar as condições de trabalho são obviamente desejáveis. Contudo, estas deverão ser combinadas com princípios de utilização simples para os quais os sistemas de produção são construídos. Tópico A complexidade surge tanto na operação como na coordenação, mas também na sua configuração manual. Esta é parcialmente compreensível e gerenciável, uma vez que uma determinada máquina ou processo de fabrico pode ser bastante avançado e complexo. Assim, a complexidade será local. Contudo, e em particular com software envolvido, dependências adhoc acidentais entre operações e coordenação tornam a situação actual mais difícil. Adicionalmente, a configuração de cada máquina e subsistema envolve uma variedade de interfaces de utilizador e ferramentas de configuração/programação. Uma vez mais, as grandes empresas podem contar com engenheiros altamente qualificados para lidar com estes problemas, enquanto que nas PMEs a situação fica facilmente ingovernável. Consideramos que podemos referir o problema como uma questão de orquestração. Orquestração é então definida como o arranjo, coordenação e gestão (semi-) automatizada de complexos sistemas de produção, incluindo as suas interacções em termos de comunicação e os seus serviços em termos de controlo por computador. O tópico pode então ser formulado como a procura de princípios óptimos, ou pelo menos exequíveis, para a orquestração de processos produtivos de pequena escala. Na realidade, existem aspectos fundamentais envolvidos que não representam apenas uma questão de engenharia a ser solucionada. Ao contrário, a situação requer uma abordagem científica com especial atenção para a recente tecnologia de suporte proveniente de outras áreas. Abordagem cientifica - A procura de princípios apropriados a PMEs para a orquestração de processos de produção não se presta a uma análise teórica, que por sua vez requer a utilização de modelos formais e derivação das soluções (sub-)óptimas e suas propriedades. Embora tivesse sido preferível obter provas formais de uma solução óptima, a complexidade do equipamento, o envolvimento de humanos, a considerável desorganização das PMEs, a necessidade de aderir às práticas industriais, assim como a variedade de PMEs existentes, dificultam uma abordagem teórica. Deste modo, foi seguida uma abordagem empírica. A dificultar o teste e a avaliação de uma abordagem empírica estão as possíveis variações no software envolvido, juntamente com a constante mudança que ocorre na produção em sistemas de produção flexíveis. Adicionalmente, a experimentação não pode ser conduzida em ambientes industriais (onde esta iria perturbar a produção). Assim sendo, as experiências deverão ser cuidadosamente seleccionadas e conduzidas em laboratório com recurso a equipamento industrial. Ainda assim, dadas as condições e singularidade de algum equipamento, não é fácil reproduzir os resultados noutros locais, o que constitui um problema para a validação e aceitação dos mesmos. Contudo, caso a solução sugerida em termos de princípios técnicos possa ser encontrada ou confirmada por resultados publicados de investigação independente, ou se técnicas relacionadas derem origem a novos produtos, tal pode desejavelmente contribuir para a validação de resultados. Isto é, embora resultados semelhantes para outros laboratórios sejam válidos, as diferenças actuais vão revelar a existência de variações que merecem estudo detalhado. Abordagem técnica - Os sistemas de produção flexíveis consistem em equipamento distribuído do ponto de vista computacional. Tipicamente, os diferentes aparelhos não foram concebidos para operarem em conjunto, mas devem, no entanto, ser de fácil configuração no local de trabalho. Uma abordagem básica passaria pela utilização de plataformas de software que suportassem componentes distribuídos de uma forma flexível. Contudo, as plataformas computacionais existentes podem não satisfazer com eficiência a necessidade do equipamento integrado, podendo revelar falta de robustez, nomeadamente nas interconecções. Deste modo, é necessário combinar com algum cuidado a tecnologia existente e confrontar as soluções sugeridas com as necessidades actuais das empresas. A abordagem seguida encontra-se dividida em quatro partes: 1. Suportar o acoplamento fraco entre componentes de forma a obter simples composição quando o equipamento é instalado ou substituído. As interacções necessitam ser assíncronas e baseadas em eventos através de interfaces bem definidas e auto-explicativas, contendo serviços definidos em termos de operações de produção (e não em termos de software interno). 2. Produzir princípios unificados para interacção com utilizador e interfaces, permitindo que utilizadores não especializados possam (re)configurar e (re)programar o sistema de produção. Uma interacção com o utilizador que permita combinar operações básicas que resultem num novo serviço, o qual deverá idealmente estar facilmente acessível através de interfaces programadas e manuais. 3. As abordagens baseadas em modelos têm-se revelado eficazes para desempenho e reutilização. No entanto, os modelos consistem em elevado nível de conhecimento e são dispendiosos de obter no âmbito da flexibilidade e desorganização das PMEs. Uma melhor abordagem é permitir a visibilidade do conhecimento envolvido numa determinada etapa em termos do processo de produção, de modo a que o operador transmita inteligência através de uma interface simples. 4. O software é por defeito não descritivo, assim como a execução sequencial de código imperativo não se compõe. Conhecimento no metanível e descrições declarativas deverão ser utilizadas, se possível, sem comprometimento dos itens anteriores. O objectivo é gerar software ao nível de aplicação, partindo de descrições de alto nível. A avaliação experimental deverá verificar técnicas individuais como tal, e os resultados deverão ser comparados com investigação relacionada. A abordagem global consiste em combinar os resultados das diferentes partes em princípios aplicáveis a futuros processos de produção das PMEs. Resultados O uso de arquitecturas orientadas a serviços (SOA) nas redes empresariais resolveu as limitações das arquitecturas orientadas a componentes no que diz respeito ao acoplamento através da standarização das interfaces, protocolos de comunicação, gestão de transacções, e segurança, entre outros. SOA ao nível do dispositivo é o resultado da importação de princípios SOA para os sistemas embebidos com algumas importantes diferenças, nomeadamente: inclusão de padrões de mensagens publish/subscribe, descoberta e descrição directa entre dispositivos, e modelos descritivos genéricos. Numa primeira fase, este trabalho validou os inúmeros trabalhos realizados sobre a aplicação de SOA ao nível do dispositivo em ambiente industrial com o teste num protótipo de célula de trabalho. De seguida foi levado a cabo um trabalho de avaliação comparativa entre duas SOA ao nível do dispositivo com estilos de arquitectura diferentes, servindo como base aos restantes desenvolvimentos da tese. Ainda que os resultados desta avaliação tenham mostrado o grande avanço proporcionado pelo uso de SOA, nomeadamente no que diz respeito ao desacoplamento entre componentes atingido, alguns aspectos críticos para o seu uso efectivo ainda estavam por resolver, designadamente: 1. A geração e a especificação dos serviços ao nível da tarefa 2 A definição de uma linguagem de orquestração adequada às SOA ao nível do dispositivo. Uma abordagem baseada em tarefas, quando relacionadas com processos de manufactura, consubstancia-se na capacidade de disponibilizar um mecanismo flexível (e amigável para o utilizador de uma PME) para a especificação das interfaces de rede. Os programas de robô são um elemento chave na flexibilidade do robô e este trabalho mostrou que o seu uso para a definição de interfaces vai elevar a fasquia da flexibilidade para o nível das interligações. A natureza procedimental de muitas linguagens de robô encaixa-se perfeitamente com o padrão de mensagens definido nas plataformas SOA, com uma mistura de variáveis de estado definidas a partir de variáveis do robô, e com acções definidas a partir de métodos da linguagem robô. A definição de uma linguagem de orquestração preencheu uma lacuna nos padrões de orquestração: sistemas conduzidos a eventos. Estes sistemas definem estados e transições de uma forma clara, potenciando a capacidade do utilizador de acompanhar o estado do sistema. Statecharts constituem um par adequado para a arquitectura SOA, uma vez que as transições de estado são baseadas em eventos, que no nosso caso são eventos na rede, mas os estados (e também as transições) incluem igualmente acções, que podem ser mapeadas para operações. A avaliação empírica efectuada mostrou uma previsível boa curva de aprendizagem para estes sistemas, em parte devido às vantagens associadas à sua semelhança a técnicas de automação tradicionais, como os Sequential Function Charts. Os resultados desta avaliação são positivos e justificam esforços suplementares para efectuar testes em aplicações reais, o que neste caso implica utilizadores de PME reais. Conclusões Três conclusões devem ser retiradas desta tese: A estratégia proposta para a especificação de serviços é um elemento chave no futuro do uso de SOA ao nível dos dispositivos, devido à importância da definição das interfaces no sucesso destas arquitecturas. A programação ao nível da tarefa é desta forma transferida da programação dos robôs para o nível da rede. Uma linguagem conduzida a eventos foi definida para a orquestração. Testes revelaram o seu uso e compatibilidade com as necessidades das células de fabrico das pequenas e médias empresas, nomeadamente estados explícitos e transições baseadas em eventos. Esta abordagem preenche uma lacuna nos padrões de orquestração existentes na indústria e constitui uma excelente base de trabalho para o futuro. Finalmente, foram abordadas técnicas baseadas em conhecimento, e avaliada a sua integração com a arquitectura definida anteriormente. Estes estudos mostraram a importância das estratégias descritivas e as inúmeras possibilidades abertas quando a semântica é adicionada aos sistemas industriais baseados em software, especialmente quando suportados em bem estabelecidas tecnologias de rede, como as descritas anteriormente.Our ability to manufacture well is the key to our wealth. Obtaining a wider range of different (and better) products in a sustainable way in terms of labour and environment is the big challenge faced by modern manufacturing. In the last few decades, automation has played a key role in the enhanced productivity of mass-production industries, but there has been a paradigm shift: global consumers ask for customization, leading manufacturers to target mass customization and consequently requiring new levels of flexibility for automation. An industrial robot is usually considered to be a flexible machine, which is only true within the large plant scenario. Small enterprises, which are by nature the most flexible ones, do not make use of robot systems as they could, because robot flexibility, which relies on reprogramming and reconfiguring, cannot be taken on by the SME (Small Medium Enterprises) worker at the workshop, and hiring specialists is unacceptable in terms of costs. The easy reconfiguration of a robotic work-cell, which is a distributed environment with computation in different platforms that are coordinated by software, is hindered greatly by the dependencies between cell components. This thesis addresses the problem of dependencies by proposing principles and mechanisms for the orchestration of complex manufacturing systems, i.e., the (semi-) automated coordination of their interactions in terms of communications and computer control. The industrial environment, especially regarding robotics, does not lend itself to theoretical analysis due to the amount of work needed to reach formal models. This is exacerbated in the unstructured SME environment and when working with user-in-the-loop systems. Therefore, the approach used in this thesis was mainly empirical, with validation through laboratory prototypes used by some representative users. The approach consisted of the following parts: 1. supporting loose coupling between components to promote simple composition of services to enable an easier reconfiguration; 2. defining unifying principles in terms of user interaction, by taking into account current robot technologies and improvements from other scientific areas, namely enterprise level networking; 3. enabling a task-based view of knowledge in terms of the manufacturing processes to promote the reconfiguration of the system by process rather than robotics specialists; 4. proposing declarative techniques that support easy configuration of the work-cell in terms understandable by the SME user. The use of service-oriented architectures (SOAs) in the business world has tackled the limitations of component-oriented architectures in terms of coupling through the standardization of interfaces, communication protocols, transaction management, and security, among others. Device-level SOA are the result of the porting of SOA principles to the embedded level with the addition of several important features, namely: publish/subscribe messaging patterns, peer-to-peer discovery description and generic templates. At an initial stage, this work has validated the current trend of using device-level SOA in industrial environments by testing their use against a prototype work-cell. Following this, a comparison was made between device-level SOA platforms that embodied two different architectural styles. This served as a basis for the rest of the thesis. Although the results from this evaluation have shown the great advances brought about by the use of device-level SOA, for instance in terms of decoupling, some critical issues for their effective use remained unchallenged, namely: 1. The generation and the specification of task-level services (contracts), with transparent and easy-to-use techniques for the SME user. 2. The definition of orchestration techniques adapted to the device-level SOA, with adequate expressiveness and simplicity for the SME user. A task-based view of knowledge in terms of manufacturing processes relies on the ability to provide a flexible (SME user-friendly) mechanism for the specification of network interfaces. Robot programs are the key element for robot flexibility. This work has shown that their use in interface definition will feature flexibility also at the interconnection level. The procedural nature of many robot programming languages copes perfectly with the device-level SOA messaging style, with a mixture of evented state variables defined by robot variables, and with actions defined by robot methods. The definition of an orchestration language has addressed a missing pattern in service orchestration: event-driven systems. These systems define states and transitions in a clear way, thus enhancing the user’s ability to predict the state of the system. Statecharts provide a perfect match for the device-level SOA since the state-transitions are event-based, but the states (and the transitions) embody actions, which can be mapped to operations. The empiric evaluation made with several types of users has shown the predictable steep learning curve of these systems, partly due to their resemblance to traditional automation techniques like SFCs. The results are therefore positive and justify the effort of testing the system against real applications, which in this case means with real SME users. Descriptive techniques for software are one of the keys to establish the bridge between humans and computer programs. Despite recent evolutions, these techniques are not yet ready for use, and supportive technologies and methodologies need to be tested. In this work, a cell specification language has been defined and software developed that configures a programming-by-demonstration robotic work-cell. In conclusion, there are three main outcomes from this thesis. The proposed strategy for the specification of services is a key enabler in the future use of device-level SOA in industrial robotics, due to the importance of interface definition in the success of these architectures. Task-level programming is in this way extended from the robot programming level to networked devices. An event-driven language has been defined for the orchestration. Tests revealed its ease of use and compatibility with the orchestration needs of SME work-cells, namely: explicit states and event-based transitions. This approach fulfils a missing orchestration pattern in the industry, and provides an excellent basis for future work. A descriptive robotic cell specification has been introduced that supports the automatic workcell (re)configuration. This work has shown the importance of descriptive knowledge in automation, especially when supported by the networking integration techniques described previously.Project SMERobot, Integrated project funded under the European Union’s Sixth Framework Programme (FP6

    Design Time Methodology for the Formal Modeling and Verification of Smart Environments

    Get PDF
    Smart Environments (SmE) are intelligent and complex due to smart connectivity and interaction of heterogeneous devices achieved by complicated and sophisticated computing algorithms. Based on their domotic and industrial applications, SmE system may be critical in terms of correctness, reliability, safety, security and other such vital factors. To achieve error-free and requirement-compliant implementation of these systems, it is advisable to enforce a design process that may guarantee these factors by adopting formal models and formal verification techniques at design time. The e-Lite research group at Politecnico di Torino is developing solutions for SmE based on integration of commercially available home automation technologies with an intelligent ecosystem based on a central OSGi-based gateway, and distributed collaboration of intelligent applications, with the help of semantic web technologies and applications. The main goal of my research is to study new methodologies which are used for the modeling and verification of SmE. This goal includes the development of a formal methodology which ensures the reliable implementation of the requirements on SmE, by modeling and verifying each component (users, devices, control algorithms and environment/context) and the interaction among them, especially at various stages in design time, so that all the complexities and ambiguities can be reduced
    corecore