110,997 research outputs found

    Timed Automata Semantics for Analyzing Creol

    Full text link
    We give a real-time semantics for the concurrent, object-oriented modeling language Creol, by mapping Creol processes to a network of timed automata. We can use our semantics to verify real time properties of Creol objects, in particular to see whether processes can be scheduled correctly and meet their end-to-end deadlines. Real-time Creol can be useful for analyzing, for instance, abstract models of multi-core embedded systems. We show how analysis can be done in Uppaal.Comment: In Proceedings FOCLASA 2010, arXiv:1007.499

    Functional and Object-Oriented Views in Embedded Software Modeling

    Get PDF
    The main aim of this article is to discuss how the functional and the object-oriented views can be inter-played in order to model the various modeling perspectives of an embedded system. We discuss if the object-oriented modeling paradigm, most likely the predominant one to develop nowadays software, in the broader sense of the term, is also adequate for modeling embedded software and how it must be conjugated with the functional paradigm. More specifically, we present how Data Flow Diagrams (DFDs), the main diagram in the traditional structured methods, can be integrated in an object-oriented development strategy based on the Unified Modeling Language (UML).CIMO - HH-02-383; Fundação para a Ciência e Tecnologia; Fundo Europeu de Desenvolvimento Regional - Project METHODES: Methodologies and Tools for Developing Complex Real-Time Embedded Systems (POSI/37334/CHS/2001)

    Object-oriented development

    Get PDF
    Object Oriented Development (OOD) is one of the extremely few software development methods actually designed for modern Ada language, real-time, embedded applications. OOD is a significant improvement over more traditional functional decomposition and modeling methods in that ODD: Better manages the size, complexity, and concurrancy of today's systems; Better addresses important software engineering principles such as abstract data types, levels of abstraction, and information hiding; Produces a better design that more closely matches reality; Produces more maintainable software by better localizing data and thus limiting the impact of requirements changes; and Specifically exploits the power of Ada. OOD is further explored in detail

    Real-time system design using preemption thresholds

    Get PDF
    As the real-time embedded systems encountered in applications such as telecommunications, aerospace, defense, and automatic control demand large, complex and multi-tasked software development, a new challenge has emerged for adopting the state-of-the-art software engineering technologies. Object-oriented design provides a scalable methodology with appropriate CASE tools for the design of software systems. Although these tools provides support for visual object-oriented modeling, design, simulation and code generation for general real-time systems, timing analysis is only available after the software is constructed. Consequently, the design-development process involving these tools in real-time systems becomes iterative and time-consuming. Introducing timing analysis in the design stage encounters a new problem. Traditional scheduling theory assumes a single level of task granularity. However, in industrial practice, common wisdom requires several design level tasks map into one run-time thread to reduce scheduling costs. This warrants a dual-level scheduling: preemptive scheduling between threads and non-preemptive scheduling between tasks in the same thread. Extending the scheduling theory to such an environment forms the scope of this thesis. Preemption threshold is introduced to control undesirable preemptions. Via a novel application of this concept, this thesis proposes a general scheduling model that subsumes both preemptive and non-preemptive scheduling models as special cases. The new theory deals with both independent and dependent tasks derivable from an object-oriented system model. Motivated by UML-RT modeling, the dependencies in our model include inter-task communication, resource sharing, and precedence. Important design issues covered include task priority and preemption threshold assignment and optimized task to thread mapping with respect of minimum scheduling cost and memory requirement. Quantitative performance evaluation is also conducted via simulation to validate the theory propose

    Modeling, Control and Automatic Code Generation for a Two-Wheeled Self-Balancing Vehicle Using Modelica

    Get PDF
    The main goal of this project was to use the Modelica features on embedded systems, real-time systems and basic mechanical modeling for the control of a two-wheeled self-balancing personal vehicle. The Elektor Wheelie, a Segway-like vehicle, was selected as the process to control. Modelica is an object-oriented language aimed at modeling of complex systems. The work in the thesis used the Modelica-based modeling and simulation tool Dymola. The Elektor Wheelie has an 8-bit programmable microcontroller (Atmega32) which was used as control unit. This microcontroller has no hardware support for floating point arithmetic operations and emulation via software has a high cost in processor time. Therefore fixed-point representation of real values was used as it only requires integer operations. In order to obtain a linear representation which was useful in the control design a simple mechanical model of the vehicle was created using Dymola. The control strategy was a linear quadratic regulator (LQR) based on a state space representation of the vehicle. Two methods to estimate the platform tilt angle were tested: a complementary filter and a Kalman filter. The Kalman filter had a better performance estimating the platform tilt angle and removing the gyroscope drift from the angular velocity signal. The state estimators as well as the controller task were generated automatically using Dymola; the same tasks were programmed manually using fixed-point arithmetic in order to evaluate the feasibility of the Dymola automatically generated code. At this stage, it was shown that automatically generated fixed-point code had similar results compared to manual coding after slight modifications were made. Finally, a simple communication application was created which allowed real-time plotting of state variables and remote controlling of the vehicle, using elements of Modelica EmbeddedSystems library

    Software for Embedded Control Systems

    Get PDF
    The research of our team deals with the realization of control schemes on digital computers. As such the emphasis is on embedded control software implementation. Applications are in the field of mechatronic devices, using a mechatronic design approach (the integrated and optimal design of a mechanical system and its embedded control system). The ultimate goal is to support the application developer (i.e. mechatronic design engineer) such that implementing control software according to ðo it the first time right¿ becomes business as usual

    Contract Aware Components, 10 years after

    Get PDF
    The notion of contract aware components has been published roughly ten years ago and is now becoming mainstream in several fields where the usage of software components is seen as critical. The goal of this paper is to survey domains such as Embedded Systems or Service Oriented Architecture where the notion of contract aware components has been influential. For each of these domains we briefly describe what has been done with this idea and we discuss the remaining challenges.Comment: In Proceedings WCSI 2010, arXiv:1010.233
    corecore