The beach application model and software framework for synchronous collaboration in ubiquit

The beach application model and software framework for synchronous collaboration in ubiquit
The beach application model and software framework for synchronous collaboration in ubiquit

The BEACH Application Model and Software Framework for Synchronous Collaboration in Ubiquitous Computing Environments

Peter Tandler

FhG – Fraunhofer Gesellschaft e.V.

IPSI – Integrated Publication and Information Systems Institute

AMBIENTE – Workspaces of the Future

Dolivostr. 15, D-64293 Darmstadt, Germany

+49-(0) 6151-869-863 (phone)

+49-(0) 12125-123 72 524 (FAX, UMS)

Peter.Tandler@ipsi.fhg.de

Abstract

In this paper, a conceptual model for synchronous applications in ubiquitous computing environments is proposed. To test its applicability, it was used to structure the architecture of the BEACH software framework that is the basis for the software infrastructure of i-LAND (the ubiquitous computing envi-ronment at FhG-IPSI). The BEACH framework provides the functionality for synchronous cooperation and interaction with roomware components, i.e. room elements with integrated information technology. To show how the BEACH model and framework can be applied, the design of a sample application is explained. Also, the BEACH model is positioned against related work. In conclusion, we provide our experiences with the current implementation.

Keywords

Synchronous collaboration, heterogeneous devices, software architecture, conceptual model, BEACH application model and framework, i-LAND, roomware components

1 Introduction

Ubiquitous computing environments offer a wide range of devices coming in many different sizes and shapes (Weiser, 1993). Being often occupied by multiple users simultaneously, ubiquitous computing environments must support synchronous work with information that is shared among all present de-vices. Due to the heterogeneous nature of ubiquitous computing devices, their software infrastructure must enable user interfaces that take advantage of their different properties. In addition, they must en-able tight collaboration of users working with different devices or sharing the same device.

Current operating systems provide no support for handling this heterogeneity. Synchronous collabora-tion can be handled by several computer-supported cooperative work frameworks, groupware systems, or middleware infrastructures, but these systems have little support for heterogeneous devices. There are research prototypes aimed at managing devices with different interaction capabilities, but these projects mainly deal with interfaces for and discovery of simple services and lack support for tight col-laboration. There is a need for a software infrastructure designed for handling heterogeneous environ-ments, providing adequate interaction styles and user interface concepts, as well as offering capabilities for synchronous collaboration. As this kind of infrastructure is built on top of current operating sys-tems, which handle the interaction with the specific hardware, it can be referred to as a “meta-operating system” (Román et al., 2001).

Over the last five years, we have been working at IPSI, the Fraunhofer Integrated Publication and In-formation Systems Institute in Darmstadt (Germany), in the context of the i-LAND project on support for synchronous collaboration with roomware components (Streitz et al., 1997; Streitz et al., 1999; Streitz et al., 2001; Streitz et al., 2002). “Roomware” is a term we coined to refer to room elements with integrated information technology such as interactive tables, walls, or chairs.

The work presented here was originally triggered by the need to create a software infrastructure for this roomware environment. This led to the development of a software prototype called “BEACH”, the Ba-sic Environment for Active Collaboration with Hypermedia. BEACH provides the software infrastruc-ture for environments supporting synchronous collaboration with many different devices. It offers a user interface that also fits to the needs of devices that have no mouse or keyboard, and which require new forms of human-computer and team-computer interaction. To allow synchronous collaboration, BEACH builds on shared documents accessible via multiple interaction devices concurrently.

During the development, BEACH was restructured and refactored (Roberts et al., 1997; Jacobsen, 2000) several times. It became obvious that a conceptual model was needed to guide developers of ubiquitous computing applications. This led us to the work presented here. Parts of BEACH emerged as a software framework with an architecture that is structured according to the conceptual model for synchronous ubiquitous computing applications proposed in this paper. The model aims to offer both flexibility and extensibility for different devices that are part of ubiquitous computing environments. 1.1 Involved Research Areas

Due to the nature of collaborative ubiquitous computing environments, the results of several related research areas have to be combined to gain an integrated application model that covers all aspects of

1-1

interaction and collaboration (fig. ):

?Human-Computer Interaction (HCI) deals with user interfaces and interaction techniques. ?Ubiquitous computing (UbiComp) explores dynamic environments with heterogeneous devices. ?Computer-Supported Cooperative Work (CSCW) offers techniques to handle synchronous interac-tion with distributed computers.

?Software development techniques are needed to ensure extensibility and reusability.

Figure 1-1. Conttibuting research areas for the design of collaborative ubiquitous computing applications.

Of course, this is a simplified view on the research areas, focusing on their contributions relevant within the context of this paper. A successful model for collaborative ubiquitous computing applica-tions must combine the results of all involved research areas.

1.2 Outline of the Paper

In the following section, requirements for the software infrastructure of a ubiquitous computing envi-ronment to support synchronous collaboration are discussed. A sample application, the Passage system, is introduced, which is used in the following to illustrate the use of the BEACH model and framework. Based on the identified requirements, the proposed conceptual application model has been designed, which is presented next. The succeeding section presents the architecture of the BEACH software framework, which has been developed according to the structure suggested by the conceptual model. The software design of the Passage system is explained as a sample application of the BEACH model and framework. To position the BEACH model against other approaches, the next section compares our model with related work. The paper closes with a discussion of the conceptual model and ideas for future work.

The model discussed in this paper is an extended and updated version of the model published in Tandler, 2001b

().

2 Requirements of Ubiquitous Computing Environments Requirements for ubiquitous computing applications have been already discussed previously in detail (Tandler, 2001b). This section therefore only gives a summarized, slightly updated presentation. Table shows the requirements categorized by the research area they are related to.

2-1

Domain Req.

Requirement

Name

H-1 Different Forms of Interaction

H-2 Different User Interface Concepts

U-1 Multiple and Heterogeneous Devices

UbiComp

U-2 Multiple-Computer

Devices

U-3 Context and Environmental Awareness

U-4 Dynamic Configuration Changes

UH-1 Adapted

Presentation

UbiComp & HCI

UH-2 Multiple-Device UI & Interaction

UH-3 Physical

Interaction

C-1 Multi-Device

Collaboration

CSCW

C-2 Modeled Collaboration Mode and Flexible Coupling

C-3 Multiple-User

Devices

UbiComp & CSCW UC-1 Collaboration with Heterogeneous Devices

S-1 Generic Functionality – Reusability

Software

Techniques S-2 Tailorable Functionality – Extensibility

Table 2-1. Summary of requirements for the software infrastructure of ubiquitous computing en-vironments

HCI

The first two requirements are concerned the human-computer interaction. In ubiquitous computing environments, new forms of interaction (req. H-1) are needed, for example, pen, speech, or gesture in-put (Baudel and Beaudouin-Lafon, 1993; Abowd and Mynatt, 2000). Different forms of interaction also imply the need for different user interface concepts (req. H-2), as current user interface metaphors

have been designed for traditional mouse and keyboard usage (

;

Gei?ler, 1995

;

Guimbretière and Winograd, 2000;

Kurtenbach and Buxton, 1994

).

; Moran et al., 1997

Pier and Landay, 1992

The next group of requirements comes from ubiquitous computing. A key property of ubiquitous com-puting environments is the presence of multiple and heterogeneous devices (req. U-1), as defined by Weiser (1991). What is perceived as a device might actually be several integrated computers working tightly together (Streitz et al., 2001), yielding multiple-computer devices (req. U-2). When several de-vices are used to cooperatively help in a task, they must be informed about the presence and properties of other devices and people nearby and the tasks they perform (Schmidt et al., 1999; Salber et al., 1999; Schilit, 1995; Mills and Scholtz, 2001). This is called context and environmental awareness (req. U-3). However, the context of UbiComp applications is constantly changing (Sousa and Garlan, 2002; Coen et al., 1999; Shafer et al., 2001). A consequent requirement is therefore the ability to handle dy-namic configuration changes (req. U-4).

When looking at human-computer interaction aspects in ubiquitous computing environments, new re-quirements arise. Due to the different form-factors of interaction devices in a ubiquitous computing environment, displays appear in a broad range of different sizes and with different orientations. For differently-sized devices, different scaling factors, a different representation, or a different selection of objects must be used, raising the need for adapting the presentation (req. UH-1). In a ubiquitous com-puting environment, a user usually has access to more than one computer (Myers et al., 2000; Rekimoto, 1998). This opens the opportunity for users to use several devices simultaneously, thus ena-bling multiple-device user interfaces and interaction (req. UH-2). To enable a natural interaction, there are situations where changes made to physical objects should also trigger software functionality (Ishii and Ullmer, 1997). This is called physical interaction (req. UH-3).

; Shafer et al., 2001

As this paper is concerned with supporting collaboration, requirements from the domain of computer-supported cooperative work must be considered. The basic requirement is to enable collaboration among multiple devices (req. C-1). To be able to adapt to changing work situations, different modes of collaboration (req. C-2) must be distinguished that support different degrees of coupling (Dewan and

Choudhard, 1991; Haake and Wilson, 1992). Collaboration can also occur if several users shared the same device, in case of multiple-user devices (req. C-3), such as interactive tables or walls (Tandler et al., 2002). This is often called single display groupware (Stewart et al., 1999). In the case of collabora-tion in ubiquitous computing environments, collaboration must be enabled when different people use very heterogeneous devices (Shafer et al., 2001; Dan R. Olsen et al., 2000). This is one other require-ment for an application model (req. UC-1).

Finally, software engineering requires a model supporting reusability (req. S-1) and extensibility (req. S-2) for software components.

3 Sample Application: The Passage System

This section first gives an overview of the functionality of the Passage system. Its design is explained below in section 6, after the introduction to the BEACH conceptual model and software framework. In this way, it can be shown how BEACH model and framework can be applied, on the one hand. On the other, the Passage system can serve as a sample for explaining the model.

Passage (Streitz et al., 2001) describes a mechanism for establishing relations between physical objects and virtual information structures, i.e., bridging the border between the real world and the digital, vir-tual world. So-called passengers (passage objects) enable people to have quick and direct access to information and to use the objects as “physical bookmarks”. It provides an intuitive way for the “trans-portation” of information between roomware components, e.g., between offices or to and from meeting rooms.

A passenger does not have to be a special physical object. Any uniquely detectable physical object may become a passenger. Since information is not stored on the passenger itself but only linked to it, people can turn any object into a passenger: a watch, a ring, a pen, glasses, or other arbitrary objects. The only restriction passengers have is that they can be identified by the “bridge” and that they are unique. The “bridge” is a device attached to a roomware component that is capable of detecting passengers. Figure 3-1

shows a key-chain as an example of a passenger. The passenger is placed on a dark area of the In-teracTable representing the real part of the “bridge” device that is embedded in the margin of the Inter-acTable. When a passenger is placed on a bridge, its virtual counter part is made accessible. With sim-ple gestures, the digital information can be assigned to or retrieved from the passenger via the virtual

part of the bridge.

Figure 3-1. Passage: a key-chain as a passenger object on the bridge of the InteracTable. The interface area in the front of the display represents the virtual part of the bridge.

We developed two methods for the detection and identification of passengers. The first method allows

the use of arbitrary objects without any preparation or tagging. Here, we use a very basic property of all physical objects – the weight – as the identifier. Therefore, each bridge contains an electronic scale for measuring the weight of the passengers. The second method uses a contact-free identification device using radio-frequency-based transponder technology, which is built into every bridge. Small electronic identification tags (RFID) that do not need batteries are attached on or embedded in physical objects so that the passenger can be identified by a unique 32-bit ID. The identification via the weight of an object provides greater flexibility and aims at short-term assignments. In contrast, the electronic tag method provides higher reliability and is useful for long-term assignments – at the expense of requiring some preparation of the objects.

4 A Conceptual Model for Ubiquitous Computing Applications

A conceptual model defines the very high-level structure of an application (Phillips, 1999; Coutaz, 1997). By using this structure for applications, basic components are identified that have a clear separa-tion of concerns, thus supporting their independence and increasing their flexibility and adaptability. According to the definition by Nowack (1999) a “conceptual model describes a conceptual understand-ing of something, and it is based on concept formation in terms of classification, generalization and aggregation. Hence, conceptual modeling implies abstraction”. Abstraction is a key technique to over-come software complexity by allowing the developer to focus on one specific aspect at a time. By us-ing this structure for applications, basic components are identified that have a clear separation of con-cerns, thus supporting their independence and increasing their flexibility and adaptability (Alencar et al., 1999).

In this section, a conceptual model for ubiquitous computing applications is presented. First the model's three major design dimensions are identified, then its properties are discussed.

4.1 Design Dimensions

In order to identify the design dimensions for a conceptual model, results of all contributing research areas (identified in section 1.1) have to be considered. Looking at these four areas, contributions for a

4-1

conceptual model can be identified (fig. ):

?Human-Computer Interaction (HCI) is concerned with user interface & interaction.

?CSCW has identified different degrees of coupling and different mechanisms for sharing. ?Ubiquitous computing (UbiComp) has to deal with device heterogeneity and their relation to the environment in which they are used.

?And, finally, separating specific concerns and defining levels of abstraction are very important software modeling techniques.

Figure 4-1. Contributions to roomware applications by the different research areas. Figure 1-1 is extended to show the contributions of every involved research area.

These contributions can be arranged as three design dimensions: separation of concerns, coupling and sharing, and level of abstraction. While the contributions “degree of coupling” and “level of abstrac-tion” define a dimension on their own, “user interface & interaction” and “devices & environment” represent different concerns of UbiComp software systems that should be separated to simplify build-ing abstractions and models (Jacobsen, 2000; Alencar et al., 1999). Hence, they can be combined to a single dimension. Separation of concerns and levels of abstraction are two independent properties of a Parnas, 1972

system structure (). This allows seeing them as independent dimensions.

These three design dimensions – separation of concerns, coupling and sharing, and level of abstraction – constitute the basic dimensions of the conceptual model proposed in this paper. Each of these dimen-sions will be discussed in the following.

The model presented here is an updated version of the model published in (Tandler, 2001b), adding the third dimension for coupling and sharing. In addition, a graphical notation to visualize the model in design diagrams is proposed.

4.2 First Dimension: Separating Basic Concerns

As described above, it is necessary for different devices to have different user interface elements (req. ). Also, different tools are useful depending on the device(s) at hand (req. ). In order to achieve the flexibility needed for different devices, it is important to clearly separate different responsibilities within the software. Therefore, models for the data, application, user interface, interaction, and envi-ronment are distinguished (fig. 4-2). The term “model” here refers to a part of an application handling a specific concern (H-1S-2Jacobsen, 2000). user-interface

environment

application data interaction

Figure 4-2. Dependencies between data, application, user-interface, environment, and interac-tion model

The data model specifies the kind of data the users can create and interact with. To work with data, an application provides the necessary functionality. These two models are independent of the currently used or supported hardware device. Instead, available devices and other relevant parts of the environ-ment are described by the environment model . The user-interface model defines the framework for how the applications can be presented to the user, taking into account the properties of the environment model. These models are not applicable for ubiquitous computing applications only. Yet, due to the heterogeneous environment in which they operate, they have a strong need for a clear structure that gives the flexibility to adapt different components independently for different situations.

In the following, these five models are presented in more detail, including their relationship to the pre-viously identified requirements. Concrete examples of how these models have been applied are given afterwards.

Data Model: Information Objects

It is a very common approach in application modeling to separate the application model from the data or domain model (Szekely et al., 1992ParcPlace-Digitalk, Inc., 1995; ). The data model relates to the information dimension identified by Jacobson et al. (1992), while the application model represents the behavior dimension . This way, both data and application models can be reused independently.

Different applications can be specified and implemented for one kind of data. This can save much time if the current application domain has complex data structures or algorithms. On the other hand, applica-tion models can be reused for different kinds of data, if the interface between the application and the data has been defined very carefully at an appropriate level of abstraction.

The data model defines the classes and functionality of all objects that can be part of a document. Ac-cording to an object-oriented view, data objects combine document state with methods to change the state. In the context of cooperative work (req. C-1), it makes sense to choose a fine-grained model to gain more flexibility in defining different aspects of collaboration, like the degree of coupling (req. ). In (Anderson et al., 2000C-2) the model facet represents the data model.

Following an object-oriented approach, the data model will usually consist of a network of multiple connected objects. For hypertext-like documents, e.g., it is popular to define one main containment hierarchy with additional connections defined by hyperlinks.

Depending on the actual application, data objects are not restricted to represent what is classically seen as a “document”. In (Edwards and LaMarca, 1999) a much broader view on documents is described. If, for instance, physical devices, people, or tasks are also treated as special kinds of “documents”, a uni-form interface can be used. The term “domain model” is sometimes also used for the concept of a data

model (ParcPlace-Digitalk, Inc., 1995; Schuckmann et al., 1999). The word "domain" stresses that the model represents artifacts of a given application domain, which may not be necessarily documents. Although the term “domain model” can be used interchangeably with “data model”, this paper uses the latter term in order to provide a clearer contrast with the application model.

Looking at the example of the Passage system, the data model covers all objects that should be attached to and carried with a passenger object. The implementation described below (see section 6) supports the generic document elements provided by the BEACH framework, but also new document elements defined by other BEACH modules.

Application Model: Application Behavior

Application models are used to describe all application aspects such as manipulation of data objects. As application models define the behavior of the application, they specify control objects as defined in (Jacobson et al., 1992).

For a “text” object, the data model includes the string describing the text and text attributes like font or size. The application model adds the editing state for text, for instance, cursor position or selection. Further, it can specify the degree of coupling between different users, i.e. it controls which parts of the editing state are shared by which users, and where private values are allowed. The workspace applica-tion model, e.g., allows specifying different rotations of the workspace for two users working at an interactive table (see req. H-1), while all other properties are tightly coupled.

To be able to use different application models for the same data model, the data model has to be un-aware of any application model and represent document state only.

It has proven helpful to choose a rather fine granularity for some application models. This way, low-level application models with a well-defined functionality (e.g. to edit a simple text) can be aggregated to form more complex models at a higher level of abstraction (e.g. an editor that can manage complete workspaces). Usually, a whole hierarchy of application models composed of generic, reusable parts and custom parts constitute an application (Schuckmann et al., 1999). This way, the application model of-ten forms a hierarchy that is isomorphic to the containment hierarchy of its associated data model (ParcPlace-Digitalk, Inc., 1995).

Using small application models turns out to foster a new conception of what is regarded as an applica-tion. The application model is seen as a description of additional semantics for a data model, instead of the conventional approach of seeing data as a “supplement” to be edited by applications. It therefore leads to an information-centric perspective on application models (Winograd and Guimbretière, 1999). The Passage system defines no new application model. Instead, it reuses the application models that are available for the data objects being attached to passengers. In fact, it associates the application model with a passenger object (in contrast to creating an association between passenger and data object) as 6-3

shown in figure below. This way, the current editing state (e.g. selections, cursor position etc.) can be transferred using Passage; this allows users to go to another roomware component and continue working there at exactly the same state.

User-Interface Model: Interface Elements

As traditional operating and window management systems have been designed for use with a tradi-tional desktop PC, the interface they offer has drawbacks when used with devices not having a mouse and keyboard or having different forms and sizes. For instance, if a menu bar is always at the top of the screen, it might be hard to reach at a wall-size display (Pier and Landay, 1992). Toolbars can take up a lot of precious screen space on a PDA-like device.

Therefore, the user interface aspects have to be separated from information and behavior of applica-tions. This is related to the interface dimension identified by Jacobson et al. (1992). However, the BEACH conceptual model further distinguishes the user interface from the interaction, to allow ac-cessing a shared user interface with different modalities and different devices. The user interface model defines the components that are available in the user interface, while the interaction model specifies how they are presented and modified.

In the case of the Passage system, the user interface is rather simple; it consists of the virtual part of the bridge. The virtual part of the bridge is displayed on a roomware component whenever a passenger is

-1

detected on the physical part of the bridge (see figure 3).

The user-interface model allows one to define alternative user-interface concepts suitable for different interaction devices (req. H-1). Multiple-computer devices (req. U-2) and multi-device interaction (req.

UH-2) make it necessary to have user interface elements that can be distributed and shared among dif-ferent devices (see below).

By explicitly modeling an appropriate user-interface, all issues related to the hardware and physical environment can be addressed at one point, allowing applications and documents to be device-independent.

Environment Model: Context Awareness

One major property of ubiquitous computing environments is the heterogeneity of the available de-vices. In order to provide a coherent user experience (Prante, 2001), the “system must have a deeper understanding of the physical space” (Brummit et al., 2000). This raises the need for an adequate model of the application’s physical environment.

Therefore, the environment model is the representation of relevant parts of the “real” world. On one hand, this includes a description of which devices are used, how they are configured, and which capa-bilities they have. This is the direct hardware environment, which can be employed by the user-interface model to adapt to different devices (req. H-1). This part corresponds to the platform model defined by the Plasticity framework (Thevenin and Coutaz, 1999), or Aura’s notion of environment Sousa and Garlan, 2002

().

In addition, other aspects can be included if they can influence the behavior of the software. Necessar-ily, it has to be possible to measure their relevant properties with sensors. Depending on detected changes in the physical environment, further actions can be triggered to reflect the current situation (req. U-4).

The Passage system is an example of how to react upon changes in the physical environment. As men-tioned, the virtual part of the bridge is shown as soon as a physical object is detected on the physical part of the bridge. Thus, Passage needs to keep a representation of the detected physical objects and the

6-3

location (especially bridge) where they have been sensed (fig. ). This is part of the environment model. Additionally, the sensors used for detecting physical objects belong to the environment model as well.

Besides the physical environment, other contextual information – such as the current task, project, or presence of co-workers – could influence the behavior of the software, so long as this information is available to the application. This part refers to the logical context of the application.

Software with functionality depending on physical objects and their properties, or other aspects of the user’s environment (req. U-3) is called context-aware (Salber et al., 1999). There is a strong need for context-aware applications in ubiquitous computing environments, as the large number of available devices, services, and tools can be a burden for the user if the complexity for explicit interaction be-comes too high. An environment designed to support the users’ needs must aim at implicit interaction (Schmidt, 2000). This can be accomplished by using changes in the real world’s state to trigger soft-ware functionality.1 Therefore, the environment model must be capable of expressing relevant informa-tion, such as spatial relationships between physical objects.

Interaction Model: Presentation and Interaction

To be able to support different styles of interaction (req. H-1, UH-3), the interaction model specifies how different interaction styles can be defined. The term used here describes a part of the software ar-chitecture, and should not be confused with the “interaction model” describing the “look and feel” of a user interface at a conceptual level as defined by Beaudouin-Lafon (2000). Instead, our interaction

Dewan and Choudhary (1995)

model is a generalized view of the one described by .

As shown in figure , the interaction model defines a way to interact with all other basic models.

4-2

This is necessary, as all models can define aspects and functions that can be represented for and ac-cessed by the user. For example, a data object like a “text” object often has a directly attached view and controller, enabling direct interaction with the text; then, interaction and data model communicate di-rectly, bypassing user interface and application models. Alternatively, a “visual interaction area” being part of the user interface model, provides functionality that has an immediate visual representation ren-dered by the interaction model. In other cases, the interaction model will not access the data model di-rectly. Instead, it is associated with an appropriate application model as a mediator to the data model.

1 However, using detected context to trigger functionality always has the danger of relying on misinter-preted information, which can be very annoying for users.

This way, the interaction style can be adapted depending on which application model is used to access a data model.

As an appropriate interaction style depends on the available interaction devices and the associated user interface, a suitable interaction model can be chosen depending on the environment and user-interface model. For visual-based interaction, an adapted version of the model-view-controller concept (Krasner and Pope, 1988; Schuckmann et al., 1996) has proven successful. However, the “model” of the model-view-controller concept is not further structured. It can refer to each of data, application, user interface, or environment model.

Passage defines an interactive visual representation (for the virtual part of the bridge) and physical ac-tions as input (placing objects on the physical part of the bridge). Consequently, its interaction model uses both a visual interaction model (see section 5.2) and a sensor model providing the basis for detect-ing physical objects (see section 6.1).

4.3 Second Dimension: Coupling and Sharing

Whenever multiple devices are involved in a software system, the question arises, which parts of the system should be local to a device or shared between several. This has to be clarified for both the ap-plication code and its state. While distributing code among devices is a technical question unique to every application, sharing state has conceptual implications, which this section addresses.

Today, many applications still run entirely local to a single computer, or access only data that is dis-tributed over a network. Aiming at synchronous collaboration, crucial aspects of traditional CSCW systems are access to shared data and coupling the applications of collaborating users (Dewan and Choudhary, 1995). Therefore, coupling has to be applied to both the data and the application model (Schuckmann et al., 1999).

In the context of ubiquitous computing environments, this view has to be extended. In addition to data and application, also information about the physical environment, e.g., the presence of nearby users or other available interaction devices, has to be exchanged by different devices and applications.

As discussed above, in a ubiquitous computing environment elements of the user interface can be dis-tributed among several machines (req. ) or among different devices (req. ). Based on the sepa-ration of concerns that has been previously identified, Dewan’s definition of coupling (U-2UH-2Dewan and Choudhard, 1991) can be refined. Coupling can now be defined as sharing the same interaction, user interface, or editing (application) state among several users or devices. Coupling can thus simply be implemented as accessing the same user interface or application model. This is an important benefit of using shared user interface and application models.

Depending on how much state is shared, the degree of coupling can be controlled. If all involved user interface and editing state is shared, a tightly coupled collaboration mode is realized; if only the same data model is shared, users work loosely coupled (req. ). This is related to the coupling model de-scribed in (C-2Dewan and Choudhary, 1995).

Even, if some models are not coupled, one can profit from sharing environment, user interface, and application models. As the information encapsulated in the models is accessible to all clients, it is pos-sible to provide awareness information in the user interface. Typical for CSCW applications is the pro-vision of workspace or activity awareness (Gutwin et al., 1996; Nomura et al., 1998). This can easily be realized if the application model including all editing state is shared (Schuckmann et al., 1999). While tightly coupling the user interface can be inconvenient (Gutwin and Greenberg, 1998; Stefik et al., 1987), shared user interface information provides a means of giving additional awareness hints to remote users.

Beyond the provision of awareness in CSCW systems, sharing the environment model allows a new kind of awareness for ubiquitous computing environments. The information embodied in the environ-ment model can be used to give environmental awareness.

This section discusses the aspects of sharing the basic models. Before starting a detailed discussion, it has to be noted that “sharing” can be implemented in many different ways. In the case of collaborating devices with quite varying properties – especially in terms of memory, performance, or network con-nection – a shared object does not necessarily have to have the same implementation for different plat-forms (see e.g. Manifold (Marsic, 2001) or Pocket Dream Team (Roth, 2002)). For example, a shared “image” object is likely to have a different implementation on a high-end desktop PC than on a PDA. At the conceptual level, however, both implementations refer to the same shared object.

Sharing the Data Model: Collaborative Data Access

In order to access and work collaboratively with shared data (req. ), it is widely agreed that a shared model for documents reduces the complexity in dealing with distributed applications. While there are well-established models defining a shared data model providing read-only access only (e.g. the World-Wide-Web), it is much more complicated to allow simultaneous modifications at a fine granularity. C-1C-2Most popular toolkits and frameworks for computer-supported cooperative work provide some mecha-nism to manage a shared-object space. In toolkits with a centralized architecture (Patterson, 1991), the document is necessarily shared. Replicated (or semi-replicated (Phillips, 1999)) systems create a shared-object space by synchronizing the replicated objects (Urnes and Graham, 1999; Anderson et al., 2000; Schuckmann et al., 1996). In later versions of GroupKit (Roseman and Greenberg, 1992; Roseman and Greenberg, 1996) shared “environments” have been introduced as shared data structures that can trigger callbacks upon changes.

Application designers thus have to decide to which degree or for which parts of their application shared access to data is desirable or necessary. For the Passage system, a shared data model enables a straight-forward access to data objects from different computers, which is necessary when a passenger is trans-ferred to another roomware component.

Sharing the Application Model: Workspace Awareness & Degree of Coupling

To have an easy way of getting information about the editing state of other users, it has been proposed not only to share the data model, but also to share the application model (Schuckmann et al., 1999). Sharing the editing state gives the ability to provide awareness about editing activities. Taking again the example of a text-edit application model, sharing it opens the opportunity to visualize such aspects as the text cursors or selections of remote users.

By changing the state of the application model, the degree of coupling or other possible work modes can be controlled (req. ). Users working with the same application model can work tightly coupled with rich awareness information (Schuckmann et al., 1999). Tightly coupled work could for instance include a coupled scroll position, coupled selection, or coupled navigation. If separate instances of the application model or different application models are used, users can still work loosely coupled when they modify the same data.

Again, the application designer has to decide whether or not a tightly coupled work mode should be supported or how much awareness information is advantageous. As already mentioned, the Passage system allows transporting both data and current editing state. This is enabled by a shared application model.

Sharing the User Interface Model: Distributed & Coupled User Interfaces

If one user interacts with different devices at the same time (req. UH-2), it is desirable that their user interfaces are coordinated. This is only possible if the information about the currently used user-interface elements is accessible to all involved devices. An example of how user interfaces can be cou-pled is the “join” operation of “join and capture” (Olsen et al., 2001).

In addition, some devices actually have several embedded computers (req. ). When a visual interac-tion area crosses the borders between displays that are physically placed next to each other, but con-nected to different machines, it is necessary that the user interface elements be freely movable between the different displays (U-2Tandler et al., 2001). In this case, user interface elements must be shared be-tween the involved machines.

However, for the Passage system, a shared user interface model is not necessary. It is sufficient that the virtual part of the bridge runs as an application local to each computer equipped with a bridge. Never-theless, if the user interface is shared, it is possible to control the bridge remotely, opening opportuni-ties for extensions. Then, sensors attached to different computers can be used to detect objects on the bridge. If, for instance, video recognition is used to identify passenger objects, it is quite likely that the video camera is attached to a different computer. This computer can provide the performance for proc-essing the video signal – without affecting with the performance of the roomware component. Another extension we implemented uses Palm Pilot PDAs to “beam” data to the bridge of a roomware compo-nent (Prante et al., 2002). Here, again, the shared user interface can be controlled remotely by the Palm. Sharing the Environment Model: Environmental Awareness

When several people and devices physically share a common environment, it is obvious that applica-tions that are used in such situations can benefit from a shared model of how their environment looks.

In ubiquitous computing environments, many different devices have attached sensors that allow detec-tion of some aspects of the physical environment. By combining all available information and making it accessible to other applications, it is possible for each application to draw on a lot of context informa-tion that can be used to adapt its behavior (req. ). Similar to the workspace awareness (which is

U-3

enabled by a shared application model), a shared environment model can serve as the basis for envi-ronmental or context awareness. This is especially important in figuring out which users and interaction devices are currently present and available.

For a system such as Passage, a shared environment model – similar to a shared user interface model – offers possibilities for extensions. In fact, for the example extensions used to illustrate the benefits of a shared user interface model, a shared environment model could be used instead. In this case, the envi-ronment model is modified remotely, instead of the user interface model. Then, sensors distributed in the environment update the shared representation of the existing passenger objects and their detected locations.

Sharing the Interaction Model: Disaggregated Computing

The advantages of implementing the data, application, user interface, and environment models as shared objects to give several users or devices the possibility to access these objects simultaneously have been discussed. In contrast, some interaction model objects always have to be local to each ma-chine. This is necessary because interaction model objects communicate with the interaction devices that are attached to the local computer.

In a ubiquitous computing environment however, the computer to which an interaction device is at-tached should become irrelevant, leading to what is called “disaggregated computing” (Shafer, 2001). Systems such as PointRight (Johanson et al., 2002a) or Mouse Anywhere of EasyLiving (Brummit et al., 2000) route input events to remote computers and introduce proxy device drivers. These examples show how an interaction model can be partially shared. The sharing can be partial only, as the device drivers still remain local to a machine.

Another benefit of a local interaction model is the ability to adapt the interaction style according to each client’s local context, especially its physical environment and interaction capabilities. An exten-sive example of how local interaction objects can be used to adapt to their local context is given in (Tandler et al., 2001).

For the Passage system, though, a local interaction model is sufficient. The visual representation of the virtual part of the bridge has to be rendered locally at the computer to which the roomware compo-nent’s display is attached. This is normally the same computer receiving also the mouse or pen events for that display. Accordingly, the observer process that is watching for detected physical objects should normally run on the same machine where the bridge is located. As it modifies the state of the user inter-face model upon detecting the physical objects, the observer process itself needs to keep its state. Con-sequently, it has no state to share.

4.4 Third Dimension: Conceptual Levels of Abstraction

The third dimension of the conceptual model is the level of abstraction. It is a widely used software engineering technique to separate different levels of abstraction in order to reduce the complexity of each level (Dijkstra, 1968; Nigay and Coutaz, 1991; Demeyer, 1996) and to ensure interoperability Hong and Landay, 2001

().

While the C2-architecture places different functionality at different levels (Taylor et al., 1996), we pre-fer to see the level of abstraction as being orthogonal to functionality. As different functionality should be separated by different basic models, software components implementing one model can belong to different levels. For example, core functionality of the interaction model, such as the handling of physical interaction devices, belongs to a very low level. Based on this functionality, abstractions are defined, e.g. widgets or logical device handlers. High-level interaction components use these abstrac-tions to define the user’s access and interaction possibilities for some other model being at the same level of abstraction.

In practice, the number of levels that are actually used may vary. In the context of framework devel-opment, it has been recommended to define three layers as part of the functional view of the architec-ture (Succi et al., 1999): the environment layer, the domain-specific layer, and the application-specific layer. These represent three different conceptual levels of abstraction. Handling environment and plat-form issues belongs to the core level, domain-specific functionality represents the generic level, and application-specific functionality is located at the task level. Similar levels are defined in (Tarpin-Bernard et al., 1998) in the context of CSCW systems.

Still, besides the three commonly acknowledged levels, one additional level, the model level, is needed to represent common abstractions for all basic concerns in an application-, domain-, and platform-independent way (fig. ). Please note that the term level is used in contrast to layer to denote a con-4-3

ceptual level of abstraction. A layer is a software technique to structure software architecture and can be used to reflect different levels of abstraction in architecture and implementation.

Figure 4-3. Four conceptual levels of abstraction: core, model, generic, and task level

The remainder of this section discusses these levels, starting at the bottom with the core layer.

Core Level: Specialized Infrastructure

The core level provides functionality that will make the development of the higher levels more conven-ient and portable by encapsulating platform-dependent details. Functionality normally provided by the (meta-) operating system, middleware infrastructures, or groupware and user interface toolkits resides at this level.

For roomware applications, additional functionality may be necessary, which is not available from off-the-shelf libraries or toolkits. This can include support for multi-user event handling, or low-level de-vice and sensor management. For instance, this includes drivers for the sensors used to detect physical objects by the Passage system.

Model Level: Abstractions to Ensure Platform-Independent Separation of Concerns The aim of the model level is to provide application-, domain-, and platform-independent abstractions to be used as the basis for the definition of higher-level abstractions. These abstractions can be imple-mented on top of the core level. This implies that the implementation of the model level maps the plat-form-dependent abstractions defined at the core level to the platform-independent abstractions consti-tuting the interface of components at the model level.

Components at the model level typically define abstract classes that allow different implementations for different platforms, e.g., using the Abstract Factory or Bridge pattern as defined in (Gamma et al., 1995). For the platform-independent implementation of user interface and interaction models for in-stance, it is quite common to use an abstract GUI framework, such as Java AWT/Swing, or the Visu-alWorks GUI framework (ParcPlace-Digitalk, Inc., 1995). These frameworks provide good examples for components at the model level.

The Passage system uses the abstract definition of sensors and application models provided by the BEACH framework. This way, arbitrary sensors can be used to detect objects and arbitrary application models can be attached to passengers. To implement the interaction, two models of interaction styles are used. The view model (see section 5.2) provides the base to render the virtual part of the bridge; the sensor model (see section 6.1) is used to detect objects placed on the physical part of the bridge (see 6-1

fig. ).

Generic Level: Reusable Functionality

One important goal of every software system is to provide generic components that are useful in many different situations and for different tasks (req. S-1). Each application domain has common concepts and algorithms that can be applied by a number of software systems.

Generic and domain-specific models and concepts should therefore be grouped at a generic level. In this way, the designer is forced to think about generic concepts, which will lead to the implementation of reusable elements.

For example, the Passage system uses the generic document elements defined by the BEACH frame-work to be associated with passenger objects, instead of defining document elements on its own. Task Level: Tailored Support for Specific Tasks

When only generic elements are defined, this obviously restricts the usability of the application to some extent (req. ). Therefore, the conceptual model needs a task level, which groups all high-level ab-stractions that are unique a single application only. However, in order to increase the amount of reus-able components, the application designer should aim at minimizing application-specific code. Ideally, an application needs to do no more than glue together existing software components.

S-2The overall Passage system is located at the task level, as it supports the task “transportation of infor-mation (including its current editing state) between roomware components”. It relies on generic mod-els, only defining the high-level user interface and specifying the supported interactions.

4.5 The BEACH Conceptual Application Model

With the three dimensions that have been discussed in detail, the overall conceptual model can be visu-alized as shown in figure 4-. Looking at the dimension of the level of abstraction and the dimension of the separation of concerns, these two dimensions open a grid, which can be used to place all software components or assign software functionality. In contrast, the degree of coupling specifies the level of collaboration for this functionality rather that defining or categorizing functionality itself.

4Figure 4-4. Notation for the three design dimensions of the BEACH conceptual model 4-4data model application

model

user interface

model

environment

model

interaction

model

The BEACH conceptual model can be used as the basis to structure architectures and applications for ubiquitous computing and roomware environments. Figure suggests a graphical notation that can be used in design diagrams to denote the position of classes within the design dimensions of the con-ceptual model. This aids developers in understanding the design of a ubiquitous computing application. In favor of being applicable to a wide range of applications and architectures, the model specifies a coarse-grained structure at a high level of abstraction. Thereby, the conceptual model leaves much freedom for application developers and architects to choose approaches appropriate for the problem at hand. Foremost, the conceptual model does not impose a restricted set of architectural styles (Jacobson et al., 1992; Phillips, 1999). Rather, many architectural styles can be used to implement the model. The same is true for the distribution architecture (Phillips, 1999). Depending on the constraints of the plat-form and requirements in terms of collaboration, an arbitrary distribution architecture can be selected. To show how the BEACH conceptual model can be applied, the next sections presents the BEACH software framework and a sample application that was built using the framework.

5 The BEACH Framework for Roomware Applications

The conceptual model introduced in the previous section was designed with the software infrastructure for roomware environments in mind as a major application area, but leaves several options open for implementation. This section presents the BEACH framework that comprises the platform for the

roomware applications developed in the i-LAND project. This is an example of how the conceptual model can be applied in the design of frameworks and architectures.

With respect to the requirements summarized in section 2, this framework offers the flexibility neces-sary for supporting collaboration with heterogeneous devices and ensures extensibility for future de-vices. Although the BEACH framework was designed as the software infrastructure for roomware components, it has generic elements that are applicable to other ubiquitous computing environments as well. On the other hand, due to the focus on the roomware components of i-LAND, several issues that are relevant for a universal ubiquitous computing software infrastructure have not been addressed. For example, the implementation as a software framework aims at constructing single applications; for a universal UbiComp infrastructure, some of the functionality included in the framework would be pro-vided as services by the infrastructure (Hong and Landay, 2001; Sousa and Garlan, 2002; Johanson et al., 2002b). Also, roomware components have a rather homogeneous software platform; in the general case the heterogeneity of devices in an UbiComp environment has to be address explicitly.

This section first gives an overview of the different layers and models before discussing the layers and their duties in more detail.

5.1 Architecture Overview

The architecture of the BEACH framework conforms to the guidelines proposed in the conceptual model, according to the three design dimensions (shown in figure ).

4-4? The five basic models separate the basic concerns of ubiquitous computing applications, as identi-fied above.

? A software layer is introduced for every conceptual level. To allow a finer granularity, these layers can be again divided in sub-layers if appropriate.

? All basic models except the interaction model are implemented as part of a shared-object space (see below) to enable distributed access if necessary. In contrast, the interaction model is implemented with local objects to be able to adapt to the local context. This gives maximum flexibility for the de-sign of applications.

Figure 5-1. The software architecture is vertically organized in four layers defining different lev-els of abstractions and horizontally by five models separating basic concerns. Crucial for syn-chronous collaboration is the shared-object space provided by the core layer.

The resulting structure of the architecture is visualized in figure 5-1. The task layer (section 5.4) is most specific, containing components that provide tailored functionality for distinct tasks only (req. S-2). Thus, the framework does not define components at the task-level itself. Instead, applications can extend the functionality defined by the generic layer (section 5.3), which contains generic components that provide functionality and abstractions necessary in typical teamwork and meeting situations sup-ported by roomware components (req. S-1).

The model layer (section 5.2) specifies the basic structure of the application by defining interfaces for data, application, user interface, environment, and interaction styles as the common abstractions for all roomware components (req. , , , ).

H-1UH-1UH-3UH-1UC-1C-3The core layer (section 5.5) offers a specialized infrastructure making the implementation of the higher layers easier (req. , , S-2). Most important, it provides a shared-object space that is crucial to allow distributed access from multiple computers (req. U-2, UH-2).

The remainder of this section explains these aspects, organized by the layers of the architecture. The layers are presented bottom-up, starting with the model layer. The core layer is presented last. It pro-

vides low-level abstractions, which are encapsulated by the model layer. A detailed understanding is therefore not necessarily required for the description of the upper layers.

Parts of the functionality the core and generic layers, which are now a part of the BEACH framework, are described in (Tandler, 2001b) in the context of architectures for ubiquitous computing environ-ments. The idea to refactor the reusable parts as a software framework is discussed in (Tandler, 2001a). This paper, now, concentrates on showing how the conceptual model can be applied in the design of a software framework.

5.2 Model Layer: Domain-Independent Abstractions for Roomware Components The aim of the model layer is to provide an implementation of the basic models to be used as the basis for the implementation of the higher layers. While the abstractions defined by higher layers (generic and task layer) belong to a specific application domain, the model layer is domain-independent. This is important to ensure extensibility and interoperability of both generic components and modules. Still, the components provided by the BEACH framework aim at supporting roomware components.

model

Figure 5-2. Components of the model layer. Every basic concern identified in the conceptual model is implemented by a corresponding component.

Figure shows the component model of the model layer. A component is used to specify the basic 5-2

abstractions for each of data, application, user interface, and environment model. The BEACH frame-work implements the basic models by defining both abstract and concrete helper classes. The base classes for environment, user-interface, application, and data model ensure that all instances of their subclasses are part of the shared-object space.

The visual interaction model (BEACH viewmodel) defines an adapted version of the model-view-controller (MVC) concept. MVC has been selected because the roomware components support visual-based in-teraction. De-coupling input and output allows the creation of different input styles, such as mouse, pen, or finger, for the same view.

The view model defines base classes for views and controllers, and includes a framework for view management, transformations, and event handling (see section 5.5 for details). These are always local objects, as they are computed by every device independently, depending on its local context. This way, views can use different scale factors depending on their display size, or show a different part of a common workspace, as in the case of the multiple-computer devices (req. U-2).

Of course, other interaction modalities could be integrated as well. Müller-Tomfelde and Steiner (2001) developed an additional component to support auditory feedback. For multi-modal interaction, new components like a multi-modal integration component (Oviatt et al., 2000) could be added as part of the interaction model.

The low-level abstractions of the environment model(BEACH envmodel) are stations and devices. The term “station” refers to computers running a BEACH client. Stations can have attached devices, which can be both explicit interaction devices – like displays, keyboards, or pens – and sensors that are used Schmidt, 2000

for implicit interaction ().

The user interface model (BEACH uimodel) is also designed for visual interaction, due to the focus on visual-based interaction of the roomware components. The main abstractions it defines are the visual interaction area and the tool. The visual interaction area represents a part of display space that can be

used to render a visual representation of a tool. A tool describes the user interface for an application model (or a set of application models).

Concerning the dependencies between the components, the architecture mainly follows the dependen-cies between the basic models as defined in the conceptual model (fig. 4-2). In addition, the environ-ment model uses the data model. This way, all environment model classes can define specialized document classes. If physical elements, like devices or people, can be treated as special kinds of docu-ments, a uniform interface can be provided, reusing concepts and interfaces for documents (Edwards and LaMarca, 1999).

On the other hand, at this layer there is no direct dependency between the interaction models and the other models as it is present in the conceptual model. The reason is that the interaction is based on a generic notion of “model” defined in the core layer.

5.3 Generic Layer: Informal Collaboration Support for Roomware Environments

One important goal of every software framework is to provide generic components that are useful in many different situations and for different tasks (req. S-1). The generic layer contains components that support many work situations in roomware environments. It builds on the abstractions defined by the model layer. Figure shows the generic components and their connections.

5-3model Figure 5-3. Generic components for roomware environments that are defined as part of the BEACH framework. The dotted boxes represent the functionality within a software component that belongs to a specific model.

5-3The generic layer defines two groups of components that are independent of each other, as shown in figure . One is concerned with the document , the other with roomware components . Both groups span several of the basic models, as typically, an application model is defined to work on a specific data model, and an interaction model defines the interaction for a specific application model. As these groups are independent, they should not be seen as building sub-layers for the generic layer. They rather form entities, being next to each other at the same layer.

Both groups’ interaction models rely on the interaction style for roomware components that support multiple users at one roomware component and gestures to ease pen interaction. This section now ex-plains the generic components.

Interaction Style for Roomware Components

As identified in one of the requirements (req. ), multiple users may interact with one device syn-chronously and cooperatively. Consequently, the BEACH framework defines a component (BEACH multiuser ) that extends the basic interaction capabilities to be able to handle concurrent actions. This is especially needed for roomware components such as the InteracTable, which fit well for small group meetings.

C-3Since the currently existing prototypes of roomware components offer pen-based interaction, gesture support is the major interaction style. The gesture component (BEACH gestures ) supports assembling of

strokes from low-level events, recognition of gesture-shapes, and provides an appropriate event dis-patching mechanism for gesture events.

Further details about the core event handling mechanisms provided by the BEACH framework and the extensions for multiple users and gesture interaction are discussed in section 5.5.

Roomware Components

The BEACH framework defines two software modules to support roomware components. First, a con-crete instantiation of the environment model (BEACH roomware ) of roomware components is defined that gives a representation of roomware components, their interaction devices, sensors, environment, and relationship to other roomware components. This is used by the second module, providing a roomware user interface (BEACH roomware interface ). It defines user interface elements that are adapted to the needs of the different roomware components (called “roomware interface elements” in figure 5-3). Special user interface elements called “visual interaction elements” define a region on a visual interaction area that can show visual representations for applications. This is an abstraction of the concept of the “win-dow” user interface element in traditional user interfaces. To be able to interact with these user inter-face elements, the component also defines views, controllers, and pen gestures for the interaction with these elements (denoted “roomware interface views” in figu 5-3). Details of the design of these components have been published in (Tandler, 2001b; Tandler et al., 200re 1).

Generic Document Elements

The basis for documents created with BEACH is a hypermedia data model. The generic document ele-ments include hand-written input (scribbles), texts, images, and links as basic objects constituting in-formation. Workspaces are used to structure information (the equivalent of a page in other hypermedia systems). By including hand-written input and free spatial arrangement of document elements within the workspace, the infrastructure aims to support informal meetings, a major application area for roomware components.

The document applications component defines fine-grain application models for the document ele-ments. They add editing behavior to the document elements, and specify additional editing state, such as the cursor positions for all users currently modifying a text object.

The “document pen interaction” component finally, defines the possibilities for pen-based interaction with the document application models. Similar to the interaction model for the roomware user inter-face, this defines view, controllers, and pen gestures for all application models. Note that in the BEACH architecture the interaction with a document element is always mediated by a specific applica-tion-model object.

5.4 Task Layer: A Platform for Roomware Applications and Extensions

The generic components that are proposed by the BEACH framework are useful in many different situations. For some tasks, it is of help if specific support is given (req. S-2). Therefore, the architecture of the framework has a task layer, which provides a place for modules to add further model elements and to extend the functionality of existing components.

By providing hooks already in the core layer to add new features and services, modules can be plugged into the BEACH framework without having to change existing code.

model

Figure 5-4. Components defined by the "creativity support" module. The task layer defines a place where extensions and applications can be integrated in the BEACH framework.

The document browser defines a connection between the user interface and the document, which is currently being viewed or edited. It can specify which part of the document is shown, also offering pos-sibilities of navigating in the document to a different workspace. The document browser itself provides no visible interaction elements in BEACH. Instead, it stays in the background and reacts upon com-mands invoked via gestures or toolbars.

At present, several tools have been implemented on top of the BEACH framework. For example, the BEACH creativity module provides support for creative teams to collect ideas during brainstorming sessions (Prante et al., 2002). As the roomware components allow informal interaction, they contribute to the atmosphere needed for creative meetings. To support smooth transitions, ideas generated be-tween sessions can be collected using a PDA and transferred to a public roomware component (e.g. a DynaWall) in the next meeting.

Other modules provide, e.g., extensions for context-awareness that is integrated with the data model (Flucher, 2001). The “Passage”-system enables the transport of BEACH documents using physical objects (see section 3). The ConnecTables explore the transition between individual and cooperative work by dynamically combining displays to form a homogeneous interaction area (Tandler et al., 2001). How auditory feedback for interactions has been added is described in (Müller-Tomfelde and Steiner, 2001).

5.5 Core Layer: Specialized Infrastructure for Roomware Components

The aim of the core layer is to provide functionality that will make the development of the higher levels more convenient or possible. Some components can be associated with one of the basic models. Others are independent of the basic models and build the foundation of the architecture. This is an example where a level, in this case the conceptual core level, is actually implemented by two sub-layers.

5-5

Figure shows the component model of the core layer. The dashed line separates the two sub-layers. Model-independent components are first of all the shared-object space to enable synchronous access to distributed objects, dependency detection and automatic update, and support for modules and services. It is important that the basic support for sharing is provided at core level, as all other components must

Myers et al., 2000

be able to define and access shared objects (, p. 17f).

To enable interaction, the event-handling component (BEACH core events) enables event dispatching for different interaction devices. As basis for the visual interaction model, the BEACH core views component defines view objects that use the dependency mechanism to observe shared model objects and are automatically updated when the shared object’s state changes.

model

uses Figure 5-5. Component model of the core layer

Some parts of this functionality are actually implemented by the runtime-environment of the imple-mentation language, by the operating system, and by other toolkits. The remainder of the section ex-plains the functionality of the components.

Module and Services Interface

In section 5.4 the concept of modules has been introduced. To be able to plug in new components that offer new functionality without having to change existing code requires a provision of appropriate hooks already at the core layer. Hooks or hot spots refer to places in a software framework that are in-tended to be adapted by applications for new uses (Froehlich et al., 1997; Schmid, 1999).

In BEACH, modules are allowed to add new:

?components, which may define or extend data, application, user interface, environment, or interac-tion models,

?services, which encapsulate new active behaviors that are not directly triggered by the user, but can start new threads of execution and become active due to external influences (like sensors), and ?hooks, which allow other modules to add new kinds of features. This is used, e.g., by the roomware interface module that defines a hook to plug in new toolbars in the user interface.

In the implementation of the BEACH framework, reflection is used to check for the presence of mod-ules. On startup, existing module objects are queried for components and services.

Services are notified on startup and shutdown of BEACH on the machine they are running on. It is up to the service what actions to take. For the communication with sensors, a service might start a process to poll a sensor for values, and act if the sensed value changes (see the Passage example in sections 3 and 6). Another service could install an observer to watch for specific state changes, e.g. of the envi-ronment model (see the implementation of the ConnecTable (Tandler et al., 2001)).

On shutdown, the service is expected to release any resources it might have allocated.

Shared-Object Space

In order to provide computer support for synchronous collaboration, a platform for distributed access to shared objects is needed (requirements UH-2, UC-1, U-3, and U-2). As mentioned above, the BEACH conceptual model makes no assumptions about the underlying distribution architecture. This section, therefore, does not discuss the properties of different groupware frameworks and toolkits; it rather highlights the important features of the software infrastructure of a ubiquitous computing environment. Replicated Distribution Architecture

The BEACH framework uses a replicated distribution architecture, as some roomware components are connected via a wireless network with a rather low bandwidth: currently 10 Mbps shared by all con-nected clients (fig. 5-6). After an initial replication, only incremental changes to the shared objects have to be transmitted, thus reducing necessary communication. A server synchronizes all replicas of

shared objects and ensures persistency. To minimize the coordination overhead, objects are grouped in “clusters” as the atomic elements for replication. CommChair ConnecTable DynaWall

BEACH Cooperation

Support BEACH

BEACH BEACH

BEACH

client

BEACH client

BEACH client

Figure 5-6. BEACH clients running on different roomware component are synchronised by a server. Mobile components communicate with the server via a wireless network.

In our implementation, it is assumed that all collaborating clients have a permanent network connection to allow a timely synchronization. However, for environments with mobile devices having no perma-nent network access, special support for versioning and merging has to be provided.

Concurrency and Consistency

Transactions are used to guarantee consistency in spite of concurrent changes to objects. As a ubiqui-tous computing environment is highly interactive, it is important to ensure a fast response of the user interface. By committing locally and allowing control flow to proceed before server confirmation, op-timistic transactions offer a significant speedup whenever conflicting actions are unlikely or harmless. Dependency Detection and Automatic Update

As changes to shared objects can be initiated by an arbitrary computer for a variety of reasons, it is very important that mechanisms are provided to trigger updates automatically when the state of shared objects changes (req. UH-3, U-4).

Therefore, it is possible to define computed values for local objects. For computed values a declarative description of the computation is used. The dependencies between computed values and attributes of shared objects are automatically detected and re-computation is triggered whenever these attributes are changed (Schuckmann et al., 1996; Schümmer et al., 2000). When, e.g., the attribute ‘color’ of a work-space is set to ‘blue’ while a view for this workspace is open somewhere, this view will be repainted, regardless who changed this value on which device. This is very similar to the constraints used in sys-tems like Amulet (Myers et al., 1997), but works also for a distributed setting.

Both triggering of re-computation and using shared events are techniques that allow for synchroniza-tion. Nonetheless, shared state (e.g. implemented as a shared-object space) together with a dependency or constraint mechanism enjoys several key advantages, which make it a preferable technique in our situation.

First, it is straightforward to make the state of objects persistent. This way, the overall state of tools and applications can be captured, which is helpful to recover from crashes, or to migrate applications to a different device (Coen et al., 1999). If a client is crashed or migrated, it can simply be restarted (op-tionally on a different device) and its saved state is retrieved from the server. In the context of synchro-nous collaboration, sharing state helps overcoming the “late-comer” problem (i.e. clients joining an already running session), which has been discussed in CSCW literature.

Second, specifying constraints or dependencies enables a declarative programming style, which has several advantages (). For example, it can be left to the constraint system, which (and Myers et al., 1992

小学语文阅读理解专项练习题

小学语文阅读理解专项练习题 1、种辣椒 常识课上,老师对植物的讲解,把我带到植物世界里。听完课,我动了心,决心种点什么,仔细观察它的生长过程。 回到家,我找到了两个花盆,满心欢喜地种下了辣椒籽。下种后,我每天都要给它浇些水,盼望种子早些发芽。一天中午,弟弟告诉我花盆里出小苗了,我飞一样地跑到窗台前,只见一棵小嫩芽拱出土,又过了两天,好几棵小芽出来了。小芽越来越多,我给小辣椒间苗,把太密的小苗小心翼翼地拔掉了一些。 到了盛夏,每株辣椒已有半尺多高了,它们的茎上都缀满了欲放的花苞,几天后,一朵朵雪白的小花,先后开放了。大约又过了四五天,辣椒就开始结果了,出现了青绿的椭圆形的小辣椒,一个个缀在茎上,真惹人喜爱。 秋风吹进窗来,带进一股香气,辣椒开始由青变红,看上去更让人喜爱。一个个两寸多长的小辣椒挂在枝头对我微笑,感谢我对它们的辛勤培育。收获的时节到了,我满怀欣喜地把成熟的辣椒一个一个摘下,竟收了小半筐。 我看着筐里的辣椒,心想:这多有意思呀!知识来源于实践,而实践又必须付出辛勤的劳动,这难道不是真理吗? 1.找出文章中点明中心的句子,在下面画横线。 2.把文章分成三段,在段尾用“‖”表示,并写出段意。 3.读下面句子,在括号里写出各运用了什么修辞手法。 ①小辣椒挂在枝头对我微笑,感谢我对它们的辛勤培育。() ②我飞一样地跑到窗台前。() 2、蒙蒙的小雨 蒙蒙的小雨正落着,陈红骑着自行车悠然于柏油路上。她没有穿雨衣,因为她觉得在这样细雨中骑车很浪漫。她望着路两边来去匆匆的行人,心想:这些人真是的,干嘛要东躲西藏的。 忽然迎面一辆的士飞驰而来她猛地拐向路边但车把挂在树干上她摔倒了小妹妹没事吧一个小伙子站在她身边问道陈红白了他一眼,没有理他。心想:谁是你的小妹妹?她一翻身想站起来,可左腿的剧痛却使她不得不重新坐在地上,她接连两次试图站起来,都没成功。最后,只好放弃了努力。小伙子一笑,“别逞强了,还是送你上医院吧。”接着,拉起陈红的车子,又扶陈红坐到车架上,推起车子向医院走去。温柔如丝的春雨淅淅沥沥地落着。陈红已不再潇洒,只感到沉重。她坐在车上,望着前面推车的小伙子,不知该说些什么。 她发现小伙子走路不太自然,仔细观察,只见小伙子左腿的袜端与裤腿之间不时地露出一段刺目的棕色。那是什么?啊,他装着一只假腿。陈红想问问他的腿,却不愿张嘴。这时,只听到小伙子自言自语地说:“三年前,我也喜欢在细雨中骑车,那的确很潇洒,可是我却重重地跌倒了,像你一样。不,还不如你。”“噢,你的左腿——?”停了一会儿,小伙子说:“就在那次跌倒时被后面的汽车轧断了。”听了这话,陈红陷入了沉思?? 医院到了,小伙子搀着陈红进了急诊室。“我去通知你父母,你知道他们的电话吗?”陈红把号码告诉了他。不一会儿,陈红的父母风风火火地赶来了。见到女儿腿上雪白的绷带,忙问这问那。陈红把经过告诉了他们,又说,“要不是那位大哥哥,我真不知该怎么办好,哎,他呢?”这时,只听护土小姐说:“那个小伙子,看见你爸妈来后,他就离开医院了。”陈红怔住了:“我还不知他叫什么呢!” 父亲背起陈红,母亲在旁边扶着,一家人走出医院的时候,他们多么希望在人流中再次寻到那小伙子的身影。 1.给第二自然段中没有标点的地方加上标点。 2.联系上下文解释加粗词的意思。

动力电池智能制造技术【全面解析】

动力电池智能制造技术 内容来源网络,由“深圳机械展(11万㎡,1100多家展商,超10万观众)”收集整理! 更多cnc加工中心、车铣磨钻床、线切割、数控刀具工具、工业机器人、非标自动化、数字化无人工厂、精密测量、数控系统、3D打印、激光切割、钣金冲压折弯、精密零件加工等展示,就在深圳机械展. 1新能源汽车动力电池的智能制造 我国已成为名副其实的全球最大的新能源汽车市场。动力电池作为最为核心的关键零部件,它的相关技术必须与电动汽车的发展相适应。新能源汽车能走多远,最终取决于动力电池能走多远。综合各类电池的技术优势及发展趋势,锂离子电池在混合动力汽车、插电式混合动力汽车和纯电动汽车领域,将会有越来越广泛的应用。该类电池技术对新能源汽车产业发展的意义重大。 当前国内生产动力电池的企业约有上百家,但由于自动化程度低,不少企业呈现出生产效率低、产品良品率低和运营信息互联互通效率低的“三低”特点。这使得动力电池在技术以及一致性问题上一直很难有实质性突破,严重影响了动力电池的整体性能,也制约了我国新能源汽车产业的发展。 基于此,动力电池的智能制造应运而生。什么是动力电池的智能制造?它是指,动力电池生产智能工厂综合运用ERP系统、MES系统等软件,并实现全周期生产的可视化、自动化、智能化。未来,包括动力电池在内的新能源汽车制造,未来必然走向大规模和智能化,呈现高精度、高速度和高可靠性的“三高”特点。而以无人

化、可视化和信息化为代表的“三化”是实现“三高”的利器,亦是智能制造的范畴。 2动力电池工艺装备智能制造技术的发展水平 作为动力电池制造环节必需的工具,动力电池生产工艺装备对动力电池规模化生产条件下的技术发展起着极为关键的作用,近年来动力电池装备产业发展势头迅猛。结合动力电池生产工艺流程,我们将从动力电池电芯生产的前、中、后各段工序以及电池组模组及系统装配工序对动力电池装备产业的智能制造技术发展现状进行分析。 1.动力电池电芯生产前段工序的技术水平 作为动力电池整条产线最为关键的环节,生产前段工序对动力电池产品品质一致性和性能稳定性产生直接影响。动力电池电芯生产前段工序是指实现锂离子动力电池从原材料输送到模切的极片加工成型的过程。自动加料系统、搅拌机、涂布机、辊压机和模切机等是动力电池制造过程的核心工艺装备。 由于前段工艺装备对动力电池性能影响较大,各项技术指标要求高,且设备技术复杂程度高,前几年国产装备技术相对较为落后,在效率、精度、稳定性等方面与国外还存在一定差距,尤其是涂布机。近年来随着行业技术日趋成熟,国内装备行业快速发展,自动加料系统、大容积自动搅拌机、高速涂布机、高速模切机等高端设备逐步实现国产化,并在实际应用中产生了较好效果。 表1. 国内电池电芯前段工序设备情况

BOMS蓄电池智能管理及自动维护系统517

BOMS蓄电池在线监测及自动维护系统 正通BOMS 开创蓄电池免人工维护新时代!!! 目前蓄电池组的维护主要由人工利用一些智能仪表、设备根据相关规范进行。而且有些维护工作费时费力还容易发生一些安全隐犯。且随着蓄电池组大面积广泛使用,人工维护显然不能满足实际需求,实际中由于蓄电池使用不当或维护不及时导致的安全事故在逐年增加。 无需繁琐的放电容量实验….

无需定期的端电压及温度测量…. 无需定期做均充…. 无需进行内阻检测…. 不用担心容量不足….. 不用担心火灾,爆炸…. 一、产品概述 蓄电池在线监测及自动维护装置集在线监测、异常告警、在线检测及自动维护四大功能于一身。可在线监测蓄电池组的状态及各项参数,及时发现落后电池,进行异常告警,并对电池组的健康状况进行系统评估,提供状态维护、检修建议。同时装置能在线对电池组进行自动维护,确保电池组浮充时保持电压均衡,使每节电池都始终处于最佳活性状态,能有效抑制并消除硫化。具体采用对低于设定浮充电压的单体电池进行阶段性补充充电,夯实单体电池容量的同时提高了蓄电池组的后备时间,并且保证了整组蓄电池中单体电池的电压、容量整体一致性,打破“水桶原理”即使有落后电池存在也不会再影响其他电池性能。同时为日常维护中容量、性能试验提供一个“起点”一致的试验平台,提高了检测精度;此外,小电流脉冲还对落后电池的去硫有很好的效果。 本装置智能化程度高,可以实现在线自动监测、检测及维护,使蓄电池组中的每节单体电池保持最佳活性状态,提高了电池后备时间及运行寿命,及时发现落后电池并自动做相应的维护,极大的减少了人力、物力维护成本,有效的进行节能减排,为使用单位创造很好的经济效益和社会效益。 二、产品功能 1、在线监测功能: 实时监测的蓄电池组的:运行状态,总电压、总电流、、环境温度、单体电压、单体内阻、单体电池负极温度、软连接条压降、电压均衡度、电池组容量、放电可持续时间; 2、自动维护功能: 在蓄电池处于浮充状态时自动巡检各单体电池电压,并针对低于设定浮充电压的电池(长期欠充)进行阶段性补充充电,并对过充电池进行单体放电以解除

高中语文和初中语文到底有什么区别

高中语文与初中语文到底有什么区别 高中语文与初中语文的区别 选文上的区别 选入语文教材的作品在广度与深度上有很大区别。初中语文的选文较简短,到高中不仅长度加长,深度也明显增加,有时甚至要从哲学、人生的角度来解读,因此不能再以初中的标准来要求自己,须在个性化体验、感悟与审美上加强,因为高中生接近成年,应具备这种能力与修养。 文言文的区别 初中的文言文大多为浅显的、有哲理性、有情节的小故事、寓言、短诗、散文,而高中的文言文则就是长篇人物传记与论述文章等,需要有较强的阅读与翻译能力。 作文的区别 高考作文要求在800字以上,每少于50个字就要扣2分,从中明显瞧出初中作文与高中作文在思维广度与深度上的区别。高中生必须学会观察生活,学会思考,学会成长,对文学作品要有自己的感悟与扬弃。 这一阶段学生所面临的问题: 学习方式的转变:针对高中语文量大面广深度更深,要寻找学习某一篇、某一类作品、作文的规律,学会反思,掌握学习方法,要不然高中学习就难以应付。

暑假里如何去衔接? 1、扩大课外阅读直接将教材拿过来就是不可取的,而要从大方向上接近,有计划地读一些高中教学大纲规定的参考书目上的课外阅读,如四大名著等长篇大部头作品要在暑假里读。 2、注意生活积累。生活中处处有语文,当您说话、作文、瞧报、瞧书与与人交往时,都就是学语文的机会,因此要对周边生活仔细观察,对国家及世界大事也要及时了解。养成记日记的习惯,对作文技法与内容的积累很有好处。 3、做好身心调试。进入新的学习阶段与学习环境,要使自己从身体与心理上尽快适应学习节奏与学习要求,调试必不可少。 进入高中了,语文的学习至关重要。 其实,学好语文有两个不可或缺的关键点: 一就是扩大知识面;二就是发展思维加工能力。前者着眼于积累,后者着眼于训练。语文水平不高,其中一个很重要的原因就是阅读太少。把多读多写提到重要位置,要求通过朗读、诵读、背诵等丰富多彩的语文实践活动,培养良好的语感,丰富语言的材料,增加文化的底蕴。 学习语文不就是学习一套知识,而就是学一种技能。习惯的培养对于提高语文素质具有特殊的意义。尤其要注重培养语文学习与运用的特殊

语文阅读理解题目和答案大全

阅读理解练习题大全 飞人——刘翔 小时候的刘翔是个顽皮的男孩,“胆子大”是很多人对他的评价。正是因为看到他比别的孩子更顽皮,家长才把他送到少年体校。体校的道路走得并不很顺利,他几乎决定放弃,但一件事情改变了年少的刘翔的决定。 他七八岁的时候,他的爷爷已经70岁了,此前老人家是不会骑自行车的,但70岁那年突然就想学,而且学会了,老人说自己学会了去哪儿都方便。刘翔就想,爷爷70岁都能学会骑自行车,自己为什么要放弃呢?现在回想起来,刘翔还在感叹,如果没有爷爷这个行动的刺激,也许就没有现在的他了。 开始的时候,刘翔练的是跳高,他很自信地说:“如果我的身高能够达到两米,我在跳高项目上将会很有作为。”他当时已经拿过上海市少年跳高冠军了,的确是一个很不错的跳高人才。但是就是那一年,他现在的跨栏教练孙海平看上他了。用孙海平的话说,跨栏选手需要胆量,很多人看到1米多高的栏横在眼前就不敢过,而刘翔有这样的胆量,再就是从他练跳高看,他的速度和爆发力很好。 2000年11月,法国里昂的一次室内田径大奖赛,6名选手进入60米栏的决赛,刘翔站在第五道,其中有3个美国选手,他旁边的第六道也是一名美国选手。发令枪响过了,没想到第六道的那个美国选手在跨第二个栏的时候就摔倒了,刘翔则是第三个冲过终点,这样的兴奋仅保存了2秒钟,裁判和大屏幕宣布:第五道中国刘翔没有成绩。怎么会这样呢?刘翔和他的教练感到很气愤,就去找裁判理论。原来裁判误将那个摔倒的美国选手当成刘翔了,因为在他们看来,中国人是不会在这个项目上跑出好成绩的。那是一次没有电视转播的比赛,幸好刘翔的教练用自己的微型摄像机将全部过程拍下来,这是孙海平的习惯,刘翔的每一次比赛他都会用摄像机拍下来,而这成了那次证明刘翔没有摔倒的唯一证据,录像十分清楚地显示,中国刘翔第三。终于还了刘翔一个清白,也给国际田径界的裁判提了个醒:中国人是可以在短距离的项目上有所作为的。 正是这样的一次偶然事故,给了刘翔师徒很大的刺激,也让他们的训练更加有了动力。真正让世界知道刘翔是2002年7月份瑞士洛桑的一次国际田联大奖赛。19岁的他跑出了13秒12的个人最好成绩,并打破了美国人保持了24年之久的世界青年纪录和中国人李彤保持了8年的亚洲纪录。 真正让世界瞩目刘翔的是2004年雅典奥运会他一举夺得奥运金牌并打破奥运会纪录、

新能源电池智能制造装备项目建议书

新能源电池智能制造装备项目 建议书 投资分析/实施方案

报告说明 受益于新能源电池高能量比、高功率比、高转换率等优点,新能 源电池行业近年来呈高速增长态势。在新能源电池应用领域中,动力 锂电池由于受到新能源汽车行业爆发的影响,动力锂电池行业也快速 增长,成为新能源电池行业增长最快的细分产业。中国锂电池出货量 从2013年的21.04GWh增长到2017年的77.80GWh,复合增长率高达38.67%。根据瑞银集团预计,全球电动汽车动力电池产量将从2018年 的93GWh增长到2025年的973GWh,7年间产量将增长9.5倍。在新能 源电池下游需求旺盛的背景下,新能源电池不断地扩大产能,进行技 改提升产品性能。根据上海有色网(SMM)统计,仅在2018年,国内 有42个新能源电池项目开工,投资总额高达3,143.38亿元,平均单 个项目投资74.84亿元。当期我国新能源电池行业的自动化、智能化 程度较低,存在生产效率低、产品良品率低和运营效率互联互通效率 低等问题,使得电池技术难有实质性突破,严重影响了新能源电池的 整体性能,也制约了下游市场尤其是新能源汽车行业的发展。基于此,新能源电池行业的智能制造应运而生。通过智能制造,新能源电池工 厂可以综合运用EPR、MES系统等软件,实现全周期生产的可视化、自 动化、智能化,实现生产的高精度、高速度及高可靠性。智能制造是

提高新能源电池性能、降低成本,进而推动新能源汽车行业发展的必 由之路。因此,新能源电池快速增长的态势,以及新能源电池生产亟 待升级的现状为智能制造装备在新能源电池制造产业的应用提供了广 阔的市场空间。 本期项目总投资包括建设投资、建设期利息和流动资金。根据谨 慎财务估算,项目总投资41051.31万元,其中:建设投资32350.01 万元,占项目总投资的78.80%;建设期利息311.15万元,占项目总投资的0.76%;流动资金8390.15万元,占项目总投资的20.44%。 根据谨慎财务测算,项目正常运营每年营业收入99200.00万元, 综合总成本费用82277.50万元,净利润9858.66万元,财务内部收益 率14.27%,财务净现值1305.35万元,全部投资回收期5.02年。本期项目具有较强的财务盈利能力,其财务净现值良好,投资回收期合理。 本期项目技术上可行、经济上合理,投资方向正确,资本结构合理,技术方案设计优良。本期项目的投资建设和实施无论是经济效益、社会效益等方面都是积极可行的。 实现“十三五”时期的发展目标,必须全面贯彻“创新、协调、 绿色、开放、共享、转型、率先、特色”的发展理念。机遇千载难逢,任务依然艰巨。只要全市上下精诚团结、拼搏实干、开拓创新、奋力

智能型锂电池管理系统(BMS)

智能型锂电池管理系统(BMS) 产品简介 【系统功能与技术参数】 晖谱智能型电池管理系统(BMS),用于检测所有电池的电压、电池的环境温度、电池组总电流、电池的无损均衡控制、充电机的管理及各种告警信息的输出。特性功能如下: 1.自主研发的电池主动无损均衡专利技术 电池主动无损均衡模块与每个单体电芯之间均有连线,任何工作或静止状态均在对电池组进行主动均衡。均衡方式是通过一个均衡电源对单只电芯进行补充电,当某串联电池组中某一只单体电芯出现不平衡时对其进行单独充电,充电电流可达到5A,使其电压保持和其它电芯一致,从而弥补了电芯的不一致性缺陷,延长了电池组的使用时间和电芯的使用寿命,使电池组的能源利用率达到最优化。 2.模块化设计 整个系统采用了完全的模块化设计,每个模块管理16只电池和1路温度,且与主控制器间通过RS485进行连接。每个模块管理的电池数量可以从1~N(N≤16)只灵活设置,接线方式采用N+1根;温度可根据需要设置成有或无。 3.触摸屏显示终端 中央主控制器与显示终端模块共同构成了控制与人机交互系统。显示终端使了带触摸按键的超大真彩色LCD屏,包括中文和英文两种操作菜单。实时显示和查看电池总电压、电池总电流、储备能量、单体电池最高电压、单体电池最低电压、电池组最高温度,电池工作的环境温度,均衡状态等。 4.报警功能 具有单只电芯低电压和总电池组低电压报警延时功能,客户可以根据自己的需求,在显示界面中选择0S~20S间的任意时间报警或亮灯。 5.完善的告警处理机制 在任何界面下告警信息都能以弹出式进行滚动显示。同时,还可以进入告警信息查询界面进行详细查询处理。 6.管理系统的设置 电池电压上限、下限报警设置,温度上限报警设置,电流上限报警设置,电压互差最大上限报警设置,SOC初始值设置,额定容量,电池自放电系数、充电机控制等。 7.超大的历史数据信息保存空间 自动按时间保存系统中出现的各类告警信息,包括电池的均衡记录。 8.外接信息输出 系统对外提供工业的CANBUS和RS485接口,同时向外提供各类告警信息的开关信号输出。 9.软件应用 根据需要整个系统可以提供PC管理软件,可以将管理系统的各类数据信息上载到电脑,进行报表的生成、图表的打印等。 10.参数标准 电压检测精度:0.5% 电流检测精度:1% 能量估算精度:5%

高中语文必修全部必背课文

高中语文必修全部必背课文 人教版高中语文必修(1-5)必背课文 诗★诗★诗 必修二 ★卫风·氓《诗经》 氓之蚩蚩,抱布贸丝。匪来贸丝,来即我谋。送子涉淇,至于顿丘。匪我愆期,子无良媒。将子无怒,秋以为期。 乘彼垝垣,以望复关。不见复关,泣涕涟涟。既见复关,载笑载言。尔卜尔筮,体无咎言。以尔车来,以我贿迁。 桑之未落,其叶沃若。于嗟鸠兮,无食桑葚!于嗟女兮,无与士耽!士之耽兮,犹可说也。女之耽兮,不可说也。 桑之落矣,其黄而陨。自我徂尔,三岁食贫。淇水汤汤,渐车帷裳。女也不爽,士贰其行。士也罔极,二三其德。 三岁为妇,靡室劳矣;夙兴夜寐,靡有朝矣。言既遂矣,至于暴矣。兄弟不知,咥其笑矣。静言思之,躬自悼矣。 及尔偕老,老使我怨。淇则有岸,隰则有泮。总角之宴,言笑晏晏。信誓旦旦,不思其反。反是不思,亦已焉哉! ★小雅·采薇(不要求背诵)《诗经》 采薇采薇,薇亦作止。曰归曰归,岁亦莫止. 靡室靡家,玁狁之故。不遑启居,玁狁之故。 采薇采薇,薇亦柔止。曰归曰归,心亦忧止. 忧心烈烈,载饥载渴。我戍未定,靡使归聘。 采薇采薇,薇亦刚止。曰归曰归,岁亦阳止. 王事靡盬,不遑启处。忧心孔疚,我行不来。 彼尔维何?维常之华。彼路斯何?君子之车. 戎车既驾,四牡业业。岂敢定居?

一月三捷。 驾彼四牡,四牡骙骙。君子所依,小人所腓. 四牡翼翼,象弭鱼服。岂不日戒?玁狁孔棘。 昔我往矣,杨柳依依。今我来思,雨雪霏霏. 行道迟迟,载渴载饥。我心伤悲,莫知我哀! 注:书上“玁”写作反犬旁+严 ★离骚(不要求背诵)屈原 长太息以掩涕兮,哀民生之多艰。余虽好修姱以鞿(原文写作“革+几”)羁兮,謇朝谇而夕替。既替余以蕙纕兮,又申之以揽茝。亦余心之所善兮,虽九死其犹未悔。怨灵修之浩荡兮,终不察夫民心。众女嫉余之蛾眉兮,谣诼谓余以善淫。固时俗之工巧兮,偭规矩而改错。背绳墨以追曲兮,竞周容以为度。忳郁邑余侘傺兮,吾独穷困乎此时也。宁溘死以流亡兮,余不忍为此态也!鸷鸟之不群兮,自前世而固然。何方圜之能周兮,夫孰异道而相安? 屈心而抑志兮,忍尤而攘诟。伏清白以死直兮,固前圣之所厚。 悔相道之不察兮,延伫乎吾将反。回朕车以复路兮,及行迷之未远。步余马于兰皋兮,驰椒丘且焉止息。进不入以离尤兮,退将复修吾初服。制芰荷以为衣兮,集芙蓉以为裳。不吾知其亦已兮,苟余情其信芳。高余冠之岌岌兮,长余佩之陆离。芳与泽其杂糅兮,唯昭质其犹未亏。忽反顾以游目兮,将往观乎四荒。佩缤纷其繁饰兮,芳菲菲其弥章。民生各有 所乐兮,余独好修以为常。虽体解吾犹未变兮,岂余心之可惩? ★涉江采芙蓉(背诵全文)古诗十九首 涉江采芙蓉,兰泽多芳草。采之欲遗谁?所思在远道。还顾望旧乡,长路漫浩浩。同心而离居,忧伤以终老。

小学语文阅读理解专项练习题汇总

小学语文阅读理解专项练习题、种辣椒1常识课上,老师对植物的讲解,把我带到植物世界里。听完课,我动了心,决心种点什么,仔细观察 它的生长过程。回到家,我找到了两个花盆,满心欢喜地种下了辣椒籽。下种后,我每天都要给它浇些水,盼望种子 早些发芽。一天中午,弟弟告诉我花盆里出小苗了,我飞一样地跑到窗台前,只见一棵小嫩芽拱出土,又过了两天,好几棵小芽出来了。小芽越来越多,我给小辣椒间苗,把太密的小苗小心翼翼地拔掉了一些。一朵朵雪白的小花,几天后,每株辣椒已有半尺多高了,它们的茎上都缀满了欲放的花苞,到了盛夏,先后开放了。大约又过了四五天,辣椒就开始结果了,出现了青绿的椭圆形的小辣椒,一个个缀在茎上,真惹人喜爱。秋风吹进窗来,带进一股香气,辣椒开始由青变红,看上去更让人喜爱。一个个两寸多长的小辣椒挂 我满怀欣喜地把成熟的辣椒一个一个摘下,收获的时节到了,在枝头对我微笑,感谢我对它们的辛勤培育。竟收了小半筐。我看着筐里的辣椒,心想:这多有意思呀!知识来源于实践,而实践又必须付出辛勤的劳动,这难道 不是真理吗?.找出文章中点明中心的句子,在下面画横线。1 2.把文章分成三段,在段尾用“‖”表示,并写出段意。 3.读下面句子,在括号里写出各运用了什么修辞手法。 )①小辣椒挂在枝头对我微笑,感谢我对它们的辛勤培育。( )我飞一样地跑到窗台前。(② 、蒙蒙的小雨2蒙蒙的小雨正落着,陈红骑着自行车悠然于柏油路上。她没有穿雨衣,因为她觉得在这样细雨中骑车 很浪漫。她望着路两边来去匆匆的行人,心想:这些人真是的,干嘛要东躲西藏的。一个没事吧小妹妹她摔倒了飞驰而来忽然迎面一辆的士她猛地拐向路边但车把挂在树干上 陈红白了他一眼,没有理他。心想:谁是你的小妹妹?她一翻身想站起来,可左小伙子站在她身边问道 腿的剧痛却使她不得不重新坐在地上,她接连两次试图站起来,都没成功。最后,只好放弃了努力。小伙”接着,拉起陈红的车子,又扶陈红坐到车架上,推起车子向医子一笑,“别逞强了,还是送你上医院吧。院走去。温柔如丝的春雨淅淅沥沥地落着。陈红已不再潇洒,只感到沉重。她坐在车上,望着前面推车的小伙子,不知该说些什么。她发现小伙子走路不太自然,仔细观察,只见小伙子左腿的袜端与裤腿之间不时地露出一段刺目的棕 色。那是什么?啊,他装着一只假腿。陈红想问问他的腿,却不愿张嘴。这时,只听到小伙子自言自语地“三年前,我也喜欢在细雨中骑车,那的确很潇洒,可是我却重重地跌倒了,像你一样。不,还不如说:”听了这话,“就在那次跌倒时被后面的汽车轧断了。你。”“噢,你的左腿——?”停了一会儿,小伙子说:?? 陈红陷入了沉思“我去通知你父母,你知道他们的电话吗?”陈红把号码告医院到了,小伙子搀着陈红进了急诊室。 诉了他。不一会儿,陈红的父母风风火火地赶来了。见到女儿腿上雪白的绷带,忙问这问那。陈红把经过“那这时,只听护土小姐说:“要不是那位大哥哥,我真不知该怎么办好,哎,他呢?”告诉了他们,又说,”个小伙子,看见你爸妈来后,他就离开医院了。”陈红怔住了:“我还不知他叫什么呢!父亲背起陈红,母亲在旁边扶着,一家人走出医院的时候,他们多么希望在人流中再次寻到那小伙子

中颖电子智能电池管理系统简介

智能电池管理系统简介 中颖电子股份有限公司高级工程师张朋翔 概述 锂离子电池研究始于20世纪80年代,1991年由索尼公司首先推出了民用产品。由于具备能量密度高、体积小、无记忆效应、循环寿命高、自放电率低等诸多优点,锂离子电池目前广泛应用于手机、MP3、笔记本电脑、相机等各种便携式设备。尤其在笔记本供电方面,其优异的高能量优势更是发挥得淋漓尽致。 但是由于能量密度高及特有的化学特性,锂离子电池的安全性和稳定性方面亦存在隐患,如过高温和过充可能会燃烧甚至导致爆炸,过放电可能造成电池本身的损坏。近年来,连续出现的笔记本电脑电池爆炸燃烧事故,导致了全球性的大批量电池召回现象,给生产厂家带来了巨大的经济损失。 为保证电池使用的安全性,在提高电池本身材料性能及加强工艺控制的同时,智能电池管理系统也成为锂离子电池应用研究的重中之重。 智能电池管理系统简介 锂离子电池发展初期,电池管理系统一般只具有检测电池组电压、温度、电流及简单保护等功能。随着锂离子电池应用范围越来越广,应用方式越来越多,对锂离子电池管理系统的要求也越来越高。 智能电池管理系统一般具有如下几个功能:电池组参数采集、剩余电量计算、电池组故障保护、电芯均衡、通信等。

● 电池组参数采集 电池组参数采集主要包括电池组中单体电池电压、系统电流、系统温度的采集,该参数可用于判定电池的剩余电量、故障保护等。 锂离子电池的电压最能体现电池的性能状态,既可以用于过充、过放等故障保护,也可以用于初步估计锂离子电池的剩余电量。系统电流可用于判断是否出现过放或过流,还可以通过对电流与时间的积分,估计电池的剩余电量等。系统温度主要用于防止电池组温度过高,发生安全事故,并对剩余容量计算进行补偿。 电池管理系统的所有算法及保护都是以采集到的电池参数为基础的,因此必须保证数据的精确度。 ● 剩余电量预测 剩余电量是反映电池性能的重要参数,也是主机进行充电、放电的判断依据。剩余电量的准确估算可以保护电池,防止过充、过放的发生,便于客户做出合理的时间安排。当前,剩余电量的检测方式主要有开路电压法、库仑积分法、内阻法、卡尔曼滤波法、混合法等。 开路电压法是目前最简单的方法,根据电池的特性得知,在电池容量与开路电压之间存在一定的函数关系,当得知开路电压时,可以初步估算电池的剩余电量。该方法精度不高,且只适用于静态检测,无法直接用于真实应用。 内阻法利用电池内阻和剩余电量的对应关系,来判定系统的剩余电量。由于锂离子电池组的内阻随工作状态变化明显,不同特性的电芯之间也有差异,该方法的重点是如何能够快速得到当前应用条件下电芯的内阻。如果可以快速进行内阻的自我测量,则可以得到相对准确的剩余容量。 库仑积分法是通过计算电池组电流与时间的积分,计算锂离子电池组充入和放出的电量,再与电池的额定电量比较,从而得出当前的剩余电量。该方法简单、稳定,但必须对电流测量非常准确,否则会出现积累误差。另外,锂离子电池的自放电以及在低温和大电流下其放电效率会变低,都会进一步降低了剩余电量的检测精度。库仑积分法必须定期进行校正。 卡尔曼滤波法是指采用卡尔曼滤波算法,综合考虑电池组循环变化、电池老化、温度等影响,进而得到精准的剩余电量。该算法相对而言最精准,但是算法复杂,又需要足够的实验数据,暂未得到具体的应用。 混合法是指通过内阻法/开路电压法与库仑积分法相结合的方式,通过开路电压法/内阻法的定期校正,使用库仑积分法得到精准的剩余电量。该方法是目前使用最广泛的方式。 ● 电池组故障保护

小学初中高中语文课本上所有的唐诗宋词

小学初中高中语文课本上所有的唐诗宋词莲都区小学语文学科推荐背诵古诗文 一年级上册 yǒnɡé cǎo 咏鹅草 tánɡ luò bīn wànɡ tánɡ bái jū yì 【唐】骆宾王【唐】白居易 ééé lí lí yuán shàng cǎo 鹅、鹅、鹅,离离原上草, qū xiàng xiàng tiān gē yí suì yì kū róng 曲项向天歌。 一岁一枯荣。

bái máo fú lǜ shuǐ yě huǒ shāo bú jìn 白毛浮绿水,野火烧不尽, hóng zhǎng bō qīng bō chūn fēng chuī yòu shēng 红掌拨清波。 春风吹又生。 dēnɡɡuàn què lóu lù chái 登鹳雀楼鹿柴 tánɡ wánɡ zhī huàn tánɡ wánɡ wéi 【唐】王之涣【唐】王维 bái rì yī shān jìn kōng shān bù jiàn rén 白日依山尽, 空山不见人,

huáng hé rù hǎi liú dàn wén rén yǔ xiǎng 黄河入海流。 但闻人语响。 yù qiónɡ qiān lǐ mù fǎn jǐnɡ rù shēn lín 欲穷千里目,返景入深林, gèng shàng yì céng lóu fù zhào qīng tái shàng 更上一层楼。 复照青苔上。 jiānɡ nán 江南 hàn yuè fǔ

汉乐府 jiānɡ nán kě cǎi lián lián yè hé tián tián 江南可采莲,莲叶何田田! yú xì lián yè jiān yú xì lián yè dōnɡ鱼戏莲叶间:鱼戏莲叶东, yú xì lián yè xī yú xì lián yè nán 鱼戏莲叶西,鱼戏莲叶南, yú xì lián yè běi 鱼戏莲叶北。 zènɡ wānɡ lún 赠汪伦

【部编语文】阅读理解练习题(含答案)经典

【部编语文】阅读理解练习题(含答案)经典 一、二年级语文下册阅读理解练习 1.阅读下文,回答问题 拔萝卜 一天,小兔子来拔萝卜,它拔啊拔,就剩下一个大大的萝卜没有拔完,它就去拔那根大 萝卜。可是它怎么拔也拔不上来,它急得转圈跑。小狗看见了,对它说:“我来帮你拔萝卜吧。”它们俩一起拔呀拔,还是拔不上来,这时候小熊来了,它们俩一起说:“小熊的力气大,你来帮我们拔萝卜吧。”小熊说:“好吧。”它们又一起拔啊拔,还是拔不出来,,最后 小象来了,对它们说:“我来帮你们拔萝卜吧”。于是,小象就用长鼻子把一些萝卜叶子卷 上,使劲拔。终于把大萝卜拔上来了。小兔高兴地说:“小狗,小熊,小象,谢谢你们帮我 拔萝卜,我们晚上一起吃蜜汁大萝卜吧!” 到了晚上,小狗,小象,还有小熊都来了,小象先把大萝卜用鼻子卷到了桌子上,小狗 负责把皮刮掉,小兔把大萝卜切开,小熊往上边抹了很多很多的蜜汁。这下,大萝卜成了 又香又脆的蜜汁大萝卜。它们每人都咬一口,呀!这个蜜汁大萝卜实在是太甜了! (1)这篇短文共________个自然段。 (2)小兔子在拔萝卜,最后一个大萝卜拔不动,________、________、________来帮小兔子拔萝卜。 (3)这个故事告诉我们什么道理?________ A. 团结的力量大。 B. 小象的力气最大了。 C. 蜜汁大萝卜真好吃。 【答案】(1)2 (2)小狗 ;熊 ;小象 (3)A 【解析】 2.读短文,完成练习。 两只小鸟 雨,哗哗哗地下着,树叶、树干全被淋湿了。飞禽走兽都在寻找避雨的地方。 有两只聪明的小鸟,飞到草地上,躲进蘑菇伞下。蘑菇伞摇晃晃地支撑着。 一只小鸟说:“我的左边淋雨了,你往右边靠一靠!” 另一只小鸟说:“我的右边淋湿了,你往左边靠一靠!” 你争我吵,你拥我挤,谁也不往外边靠一靠。挤着,挤着,“咔嚓”一声,蘑菇伞断了……两只小鸟红着脸蛋儿,你看看我,我看看你,不知说什么好! 雨,仍在哗哗哗地下着…… (1)这篇短文共有________个自然段。 (2)在文中找出下列词语的近义词或反义词。 ①近义词:争——________

高中语文必修二课文必背

高中语文必修二课文 必背 -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

《荷塘月色》 朱自清 《诗经》 《离骚》 《孔雀东南飞》 《涉江采芙蓉》 涉江采芙蓉,兰泽多芳草。采之欲遗谁?所思在远道。还顾望旧乡,长路漫浩 浩。同心而离居,忧伤以终老。 《短歌行》 对酒当歌,人生几何!譬如朝露,去日苦多。慨当以慷,忧思难忘。何以解忧?唯有杜康。青青子衿,悠悠我心。但为君故,沉吟至今。呦呦鹿鸣,食野之苹。我有嘉宾,鼓瑟吹笙。 明明如月,何时可掇?忧从中来,不可断绝。越陌度阡,枉用相存。契阔谈讌,心念旧恩。月明星稀,乌鹊南飞。绕树三匝,何枝可依?山不厌高,海不厌深。周公吐哺,天下归心。 《归园田居》(其一) 陶渊明 少无适俗韵,性本爱丘山。误落尘网中,一去三十年。羁鸟恋旧林,池鱼思故渊。开荒南野际,守拙归园田。方宅十余亩,草屋八九间。榆柳荫后檐,桃李罗堂前。暧暧远人村,依依墟里烟。狗吠深巷中,鸡鸣桑树颠。户庭无尘杂,虚室有余闲。久在樊笼里,复得反自然。 《兰亭集序》 王羲之

永和九年,岁在癸丑,暮春之初,会于会稽山阴之兰亭,修禊是也。群贤毕至,少长咸集。此地有崇山峻岭,茂林修竹,又有清流激湍,映带左右,引以为流觞曲水,列坐其次。虽无丝竹管弦之胜,一觞一咏,亦足以畅叙幽情。 是日也,天朗气清,惠风和畅。仰观宇宙之大,俯察品类之胜,所以游目骋怀,足以极视听之娱,信可乐也。 夫人之相与,俯仰一世。或取诸怀抱,悟言一室之内;或因寄所托,放浪形骸之外。虽趣舍万殊,静噪不同,当其欣于所遇,暂得于己,怏然自足,不知老之将至;及其所之既倦,情随事迁,感慨系之矣。向之所欣,俯仰之间,已为陈迹。犹不能不以之兴怀,况修短随化,终期于尽! 古人云;“死生亦大矣”,岂不痛哉! 每览昔人兴感之由,若合一契,未尝不临文嗟悼,不能喻之于怀。固知一死生为虚诞,齐彭殇为妄作。后之视今,亦犹今视昔,悲夫!固列叙时人,录其所述,虽世殊事异,所以兴怀,其致一也。后之览今,亦将有感于斯文。 《赤壁赋》 苏轼 壬戌之秋,七月既望,苏子与客泛舟游于赤壁之下。清风徐来,水波不兴。举酒属客,诵明月之诗,歌窈窕之章。少焉,月出于东山之上;徘徊于斗牛之间。白露横江,水光接天。纵一苇之所如,凌万顷之茫然。浩浩乎如冯虚御风,而不知其所止;飘飘乎如遗世独立,羽化而登仙。 于是饮酒乐甚,扣弦而歌之。歌曰;“桂棹兮兰桨,击空明兮溯流光。渺渺,如泣如诉兮予怀,望美人兮天一方。”客有吹洞箫者,倚歌而和之。其声呜呜然,如怨如慕,如泣如诉,余音袅袅,不绝如缕。舞幽壑之潜蛟,泣孤舟之嫠妇。 苏子愀然,正襟危坐而问客曰;“何为其然也?”客曰;“‘月明星稀,乌鹊南飞’此非曹孟德之诗乎西望夏口,东望武昌,山川相缪,郁乎苍苍,此非孟德之困于周郎者乎方其破荆州,下江陵,顺流而东也,舳胪千里,旌旗蔽空,酾酒临江,横槊赋诗,固一世之也,而今安在哉?况吾与子游樵于江渚之上,侣鱼虾而友麋鹿,驾一叶之扁舟,举匏樽以相属。 寄浮游于天地,渺沧海之一粟。哀吾生之须臾,羡长江之无穷。携飞仙以遨游,抱明月而长终。知不可乎骤得,托遗响于悲风。” 苏子曰;“客亦知夫水与月乎?逝者如斯,而未尝往也;盈虚者如彼,而卒莫消长也。盖将自其变者而观之,则天地曾不能以一瞬;自其不变者而观之,则物与我皆无尽也,而又何羡乎!且夫天地之间,物各有主,苟非吾之所有,虽一毫而莫取。惟江上之清风,与山间之明月,耳得

小学语文阅读理解练习题

(一)猫 猫是捉老鼠的能手。它的耳朵很灵敏,能转来转去,哪怕是极小的声音,它也能及时辨出。猫有一双明亮的眼睛,狡猾的老鼠逃不过它的眼睛。猫的胡须像把尺,能测出各个洞的大小。猫的脚趾上有锋利的爪子,能爬树、跳墙、追捕老鼠。 1、短文有______句话。 2、短文写了猫的______、______、______和______。 3、用“__”划出描写猫的耳朵的句子。 4、这篇文章主要写:(选择正确的“√”) ①猫的耳朵很灵敏。……………………………………() ②猫有一双明亮的眼睛。………………………………() ③猫的脚趾上有锋利的爪子。…………………………() (二)蚂蚁 蚂蚁整天辛勤的劳动,没有一个偷懒的。它们很团结,见了面就相互摇着触角打招呼。我很喜欢它们,有时候捉虫子给它们吃。 1.这段话中的“它们”指的是_____________ 。 2.“我”喜欢它们的原因:一是它们_______ ;二是它们__________ 。3.“我”喜欢它们表现在:___________________________________ 。

我有一支心爱的铅笔,是爸爸妈妈给我买的。 这支铅笔花花绿绿,很美丽。铅笔上画着一支大白鹅,红嘴巴,高额头,浑身雪白。它在池塘里快活地游来游去,可爱极了。水面上有一片片的荷叶,好像漂着一顶顶帽子。水早缓缓地流着,好像在说:“小朋友,你要好好学习呀!” 1、这篇短文______节。 2、第二节有______句话。 3、用“____”划出描写铅笔头上大白鹅的句子。 4、这篇短文主要写了:(用“√”) ①这支铅笔是爸爸妈妈给我买的。………………() ②水要小朋友好好学习。…………………………() ③这支铅笔很美丽。………………………………() (二)春天的田野 春天的田野真美啊!柳树发芽了。桃树开了花。青青的小草悄悄地从泥土里钻出来,地上像插遍了密密的松针。金黄的油菜花,引得蜜蜂来回地飞舞。 1、这段话主要写了()的景色。 2、这段话中表示颜色的词有() 3、把这段话中比喻的句子画出来。

智能锂电池充电管理方案

智能锂电池充电管理方案(1) 2012-07-30 21:59:37 来源:21ic 关键字:智能锂电池充电管理 1 引言 锂离子电池是上世纪九十年代发展起来的一种新型二次电池。由于锂离子电池具有能量密度高和循环寿命长等一系列的优点,因此很快在便携式电子设备中获得广泛应用,也获得了锂电池生产商的青睐。 锂离子电池主要由正极活性材料,易燃有机电解液和碳负极等构成。因此,锂离子电池的安全性主要是由这些组件间的化学反应引起。 在使用中,根据锂电池的结构特性,最高充电终止电压应低于4.2 V,绝对不能过充,否则会因正极锂离子拿走太多,产生危险。其充放电要求较高,一般应采用专门的恒流、恒压充电器进行充电。通常恒流充电至设定值后转入恒压充电,当恒压充电至0.1 A 以下时,应停止充电。 锂电池的放电由于内部结构所致,放电时锂离子不能全部移向正极,必须保留一部分锂离子在负极,以保证下次充电时锂离子能够畅通地嵌入通道。否则,电池寿命会缩短,因此在放电时需要严格控制放电终止电压。 因此,设计一套高精度锂离子充电管理系统对于锂离子电池应用是至关重要的。本文介绍的智能化锂电池充电系统是专门为锂电池设计的高端技术解决方案。该系统适用于锂离子/镍氢/铅酸蓄电池单体及整组进行实时监控、电池均衡、充放电电压、温度监测等,采用了电压均衡控制、超温保护等智能化技术,是功能强大、技术指标完善的动力电池充电管理系统。 2 系统构成与设计 充电系统主要由n 个(可扩充)充电模块和上位PC 机监控软件组成。支持充电过程编程,可按恒流充电、恒压充电等多种工况进行相应组合设置工作步骤,除了具有硬件过压过流保护,还允许用户定义每个通道的过电压、过电流等参数值,具备数据采集、存储、通讯及分析功能,具有掉电保护功能,不丢失数据。另外还配置锂电池管理系统,它主要由充电机、主控单元、数采单元和人机界面组成,硬件组成框图如图1 所示。

Keysight 智能电池管理系统 Battery Management System

SL1091A BMS BMS BMS SOC BMS BMS BMS BMS BMS

? BMS ? ? BMS ? SOC SOH ? ? ? BMS HiL HiL Scienlab BMS HiL 1 Gbps HiL BMS ± 1 mV ± 2 μA BMS 80 μs 1 MHz

BMS BMS BMS BMS CAN BMS BMS SOC SOH

BMS BMS // PE 1 KV BMS

BMS BMS ? ? ? ? / ? ? BMS SOC SOH SOF ? SOC ? SOH ? SOF ? ? ? ? ? ? / SOC ? ? ? ? ? ? ? ? Pt50Pt100 ? ? ? ? ? ? ? ? / CAN ? ? ? ? dSpace National Instruments ? ? ? ? CAN ? ? ? HiL

0 ... 8 V <1 mV ± 5 A± 10 A ± 40 W± 80 W (3 V –> 5 V)< -80 μs 1 kV PE ±10 mA ±2 μA + 0.05% ±5 A ±1 mA + 0.05% RTD Pt100Pt500Pt1000Ni KTY 1 kV PE 0 … 5 kΩ 0.1 Ω ±0.1 Ω ± 0.1% ±100 mV ±10 μV ±0.1% 1 kV PE 1 kΩ … 100 MΩ 1 kΩ … 1 MΩ 1% 1 MΩ … 100 MΩ 2% 1 kV PE 0 … 650 V 24 V / /PWM HiL EtherCAT 1 kHz CAN BMS BMS

初高中语文衔接教材

初高中语文衔接教材 第一讲初高中语文的区别及应对策略 考情分析 一、中考考试能力要求 中考语文要求测试识记、理解、分析综合、应用和欣赏感受五种能力,这五种能力表现为五个层级:(一)识记:指识别和记忆,是语文能力最基本的层级。 (二)理解:指领会并能作简单的解释,是在识记基础上高一级的能力层级。 (三)分析综合:指分解剖析和归纳整理,是在识记和理解基础上高一级的能力层级。 (四)应用:指对语文知识和能力的运用,是以识记、理解和分析综合为基础,在表达方面发展了的能力层级。 (五)欣赏感受:指对阅读材料中文学作品的形象和描写,优美精辟语言的欣赏和感受能力。 对A、B、C、D、E五个能力层级均可有难易不同的考查,但均以《大纲》为依据,在《大纲》所要求的能力范围之内(渗透新课标精神)。 二、高考考试能力要求 高考语文要求考查考生识记、理解、分析综合、鉴赏评价、表达应用和探究六种能力,这六种能力表现为六个层级。 (一)识记:指识别和记忆,是最基本的能力层级。 (二)理解:指领会并能作简单的解释,是在识记基础上高一级的能力层级。 (三)分析综合:指分解剖析和归纳整理,是在识记和理解的基础上进一步提高了的能力层级。 (四)鉴赏评价:指对阅读材料的鉴别、赏析和评说,是以识记、理解和分析综合为基础,在阅读方面发展了的能力层级。 (五)表达应用:指对语文知识和能力的运用,是以识记、理解和分析综合为基础,在表达方面发展了的能力层级。 (六)探究:指对某些问题进行探讨,有见解,有发现,是在识记、理解和分析综合的基础上发展了的能力层级。 对A、B、C、D、E、F六个能力层级均可有难易不同的考查。 学情分析 一、高中语文学习与初中语文学习的区别 语文学习贯穿于我们生活的始终。从我们会听人讲话,与人交流开始,我们就在学习或运用语文了。进入学校之后,语文成了一门专门的学科,语音、字词等练习成了小学语文课永远的作业。随着年龄的增长,学识的增加,学习阶段的提升,语文学习的内容也越来越多,越来越复杂。到了高中阶段,语文学习内容的广泛性和复杂性更加突出。 与初中语文学习相比较,高中语文学习有以下特点。 (一)内容更加广泛、丰富 从教材所涉及的内容看,几乎包括人类进入文明社会以后各个时期的作品。例如,从中国古典文学的角度看,涵盖从《诗经》到明清的诗歌、散文、戏剧、小说等各种文学形式,而其中包含的学习内容又非常丰富,作家作品、文学文化常识、实词、虚词、句式、修辞、文章内容理解归纳、文学鉴赏以及语言的运用等等,都在学习要求之中。 外国的作家作品,重点学习历史上有影响的作家、政治家的诗歌、小说、散文、演讲词等产生过一定影响的作品。从风格上看,更是不拘一格。例如,在二战以后西方兴起的“后现代主义”小说也选入教材中。 (二)知识性强,系统性强

相关文档
最新文档