Microsoft Word - 3.Dan Luo, Jianhua Jiang, Buyun Sheng--Design and Implementation of Network based Collaborative Design System. 226-231 Advances in Systems Science and Applications (2011), Vol.11, No.3-4 ISSN 1078-6236 International Institute for General Systems Studies, Inc Design and Implementation of Network based Collaborative Design System Dan Luo, Jianhua Jiang and Buyun Sheng School of mechanical and electronic engineering, Wuhan University of Technology, Wuhan 430070, China Abstract In order to support collaborative design in network environment, according to the aim and requirements of network based collaborative design system (NCDS), the functional architecture of NCDS was designed and its key technology includes improving of collaborative application sharing, multimedia communication in real-time, management of collaborative interaction and network environment of collaborative work were researched. Finally, a NCDS was developed and its correctness and feasibility was validated by applied in practice. Keywords Collaborative Design; NCDS; Product Designing; Audio & Video Communication; Member Management 1. Introduction With the popularity of computer network and the implementation of parallel engineering, collaborative design technology[1] has become the research focus in advanced manufacturing domain. To construct an effective, convenient and practical NCDS is the precondition of realizing internet based different design for users dispersed geographically. NCDS supports product designing, information sharing and exchanging, CAX accessing and invocation, product design projects discussing and modifying among product designing engineers in different locations by the communication of audio & video, word and images. In this way, the process of product designing can be carried out across time and space and its cycles be shortened, product development costs be reduced and personalized product development capacity be enhanced substantially. 2. System Design 2.1 Aims and requirements of NCDS The purpose of NCDS is to make each participant watch and participate in the real-time collaborative design process, and provide a management tool for design organizer to organize and control the whole process of produce designing. The aim and requirement of NCDS is to: (1) Provide a platform for information exchanging. It should support real-time and mutual communication in audio & video, text interactive and USB interface based camera images, more than 256 people online simultaneous, audio and video information exchanging with 4 users for each user at the same time. (2) Tracking the entire process of remote designing. It achieves screen broadcasting of remote designing and other participants receiving in real-time smoothly. (3) Support remote operation of collaborative design. Organizer initiates a remote designing and designates the participants at the principle of one designer any time and the designer can only do the operation allowed by the organizer. (4) Organize and manage the process of collaborative design. It manages the identity data, password and permissions of designers, and designates the jobs to be finished, allocates permissions to participants or expel a designated staff and manages the process of designing. (5) Other requirements. The System should be scalable, interface attractively and easy to Advances in Systems Science and Applications (2011), Vol.11, No.3-4 227 ISSN 1078-6236 International Institute for General Systems Studies, Inc use. 2.2 Functional architecture of NCDS According to the aims and requirements of the system, a NCDS was designed, it includes audio & video meeting and remote screen broadcasting, remote operation control and console management four parts, as shown in figure 1. N C D S audio and video meeting remote screen broadcast remote operation control console management video & audio communication text charting network communication screen transmit screen receive control client controlled client user management role management Figure 1 functional structure of NCDS (1) Audio and video meeting. It realizes information sharing by audio & video, text and network communication modules. Audio communication process includes audio signal acquisition, compression, send and playback while video communication collects data from video card and send it to network after compressed, at same time it extract the received data from other members and playback it on the display, text charting provides real-time text messages interactive and supports text sending for a group, network communication transmits and receives data and choose transmission way according the type of message. (2) Remote screen broadcast. It includes screen transmit and receive two modules. The screen transmit captures the screen of server, calculates images difference and sends it after compressed. While screen receive incepts the screen of server and extracts it in real-time, synthesizes images and displays it. (3) Remote operation control. The control client simulates the images in local machine according the screen received from server client (controlled client), encodes the operation commands into characters and sent them back to server client. The server client receives control commands from control client and simulates the scene. (4) Console management. The user management is responsible for constructing workgroup and managing user data, the role management defines and manages every role in designing process, and manager can change the designer and speaker according the need. 3 .key technology 3.1 Improvements of collaborative application sharing Collaborative application sharing refers to dispatch application view of server to other clients and collect all other input command to the server. It includes centralized sharing and replication sharing. In allusion to the inherent defects of the two types of sharing technologies, this paper improves the sharing method according to perceived degree of collaboration, collaborative function of collaboration tools and fast transmission of CAD models and images. (1) Improve the perceived degree of collaboration. For perceiving client information, perceptual information and perceptual result table was used to store online users’ status information both in server and clients as shown in figure 2. Node 1 sends the perceived results received by the event sensing module from clients to the server and updates the perception table. In receiving the results, the server updates perceptual 228 Luo: Design and Implementation of Network based Collaborative Design System table and sends the updated information to other nodes, those other nodes then update their perceptual list according received information from the server. In this way, all the nodes can perceive the changing status of every node. Figure 2 event sensing process of clients In addition, multi-cursor technology also supports the parallel perceiving of collaboration. All users’ cursors displayed in a screen at the same time and distinguished by different colors for different group or by showing designers’ name under the cursors[3]. (2) Improve the function of collaboration tools In order to make common application software supports displaying of multi-cursors, revocation and redoing of operation, decomposition and analysis of input event stream, the interface of common software must be extended and it can be solved by the locking mechanism in application-level. The process of the improving is shown in figure 3 where solid line denotes information flow of collaborative operation and dotted line denotes information flow of collaborative tool. The collaborative tool can realize many control and cooperation mechanism such as certification and conflict coordinate among members, direct interaction, multi-input processing, locking in operation level. Figure 3 improvement of collaborative tool to software (3) Fast transmission of CAD models and images For the problem of low transmission speed caused by large quantity of images data, Incremental transfer technology and images compressing from the aspects of time-dependent, image compression and color transformation were used in this paper. Time-dependent of screen images refers to changes in the adjacent images confined to a few places and the changes of image color limited in a few tint. So, only the data reflecting changed parts of the screen images should be compressed and transmitted. In this process, some technologies including the message mechanism used to capture the changes of screen images, comparing these changes in a relatively large time interval, inter-frame prediction and compensation were used to solve the inconsistencies between screen changes and the messages. Advances in Systems Science and Applications (2011), Vol.11, No.3-4 229 ISSN 1078-6236 International Institute for General Systems Studies, Inc Small piece based encoding was used to compress images of the screen and its encoded form of data packets as shown in figure 4. Any changes in a rectangular area of screen images will be divided into a 16*16 sub-block named a piece, and then appropriate encoding form is used to each piece and a byte is adopted to as sign to show the encoding form of the piece. Figure 4 data format of small piece based encoding Color transformation refers to change screen data into the transition color (16-bit color) and divide the screen images into small pieces size of 16*16, use small piece comparative law to capture changes of the screen images, and adopt small piece based encoding algorithm to compress changes and re-assemble them into a packet. 3.2 Multimedia based communication in real-time The technology of multimedia based collaborative design supported communication includes audio & video capture, its compression and special treatment. As to audio & video capture, video for window (VFW) SDK is used to capture, play and edit audio & video information into AVI format, and MPEG4/DivX is used to compress, store and transmit audio & video. Special treatment of audio system includes voice consistency and delay, mute detection and interactive approach in full-duplex. Data buffer technology is used to solve the voice consistency and delay[4]. By coding the sample value of voice and using a serial number to indicate the sample time, the missed number was discarded as to avoid sending mute information. Limited input & output scope of audio is used to avoid the echo in full-duplex interactive process. Special treatment of video ensures the video receiving quickly by throwing away some video frames. The video frame includes I, P and B three types. I frame is coded frame and it is the most important, while B frame is the least important. So, the principle of abandoning frame is: (1) Abandon B frame firstly, then P frame and I frame lastly. (2) All the abandoned frames should distribute in the media flow as uniformly as possible. (3) Adjust the rate of abandoning frames according to the network status. 3.3 Management of collaborative interaction (1) Member management Member management in NCDS refers to permission management and access control of members, permission altering, authorization and cancellation dynamically. Role based access control can be used to achieve the management of permissions. Roles including administrator, head designer, general member and spokesman. The administrator is responsible for assigning roles to members, designer has the operation right, general member and spokesman can send messages to other members. A member can be assigned multiple roles at the same time and there is only one head designer and one designer in a collaboration group any time. (2) Speaking management In process of collaboration, each user can obtain the speaking right or give up it in preventing some speaker occupied the right too long or refused to give up speaking right. So, four types of speaking management mechanism is used[5]: 1) Centralized control. An administrator is in charge of assigning speaking right to members. 230 Luo: Design and Implementation of Network based Collaborative Design System 2) Grab initiatively. Users sent application to the control machine, it then deprives the speaking right of current speaker and assigns the right to the user according to agreed strategy. 3) Give up initiatively. The current speaker gives up its right initiatively. 4) Speaking freely. Everyone can speak and receive messages at freedom while obtain the operation right by competing freely. In the process of speaking, each participant can receive any other audio & video and only 8-way audio & video is allowed in order to ensure smooth communication. (3) Token control. Token is used to avoid inconsistency caused by multiple designers in operating on a same model at the same time. A head designer manages a token can be applied by any designer. During the designing process, only the token owner can operate the model and only his operation commands can be transmitted to the client of sharing the application, while members without token only can see the operation process or communicating each other by the multimedia environment provided by the NCDS. 3.4 Network environment for NCDS For the IP is allocated by ISP dynamically, it’s impossible to establish a permanent association between distributed members by IP address. Moreover, there is a communication problem of how to penetrate NAT. In these cases, a management server may be used to resolve them by storing user information and their current status of collaboration. In addition, all the data stored in the server transmitted to the recipient as to establish stable communication channels between recipient and server and solve the issue of NAT. In order to ensure the security of enterprise information, port mapping technology is used to build a link between internal LAN IP and the real IP. Port mapping can also map a virtual IP of a host to a real IP or map a number of ports in a host with permanent IP address into different port of different machines in LAN. 4.System Implement and Application Example 4.1 System implement A NCDS was developed based on TCP/IP protocol and can be run on Windows platform, the hardware including camera, headphones, microphone and PC, the system developed on Borland Delphi and SOCKET technology was used. The system including user management, main application interface, audio & video service, design service, screen broadcast and receive, text communication and port mapping. The user management is used to add, delete or change workgroup and its members, define roles and configuration network. Main application provides an interface for users and audio & video service developed on VFW technology. Design service uses VNC as kernel and called in main application interface. Screen broadcast and receive adopts VNCX.DLL and port mapping realized by port mapping technology. 4.2 Application example Figure 5 running example of NCDS Advances in Systems Science and Applications (2011), Vol.11, No.3-4 231 ISSN 1078-6236 International Institute for General Systems Studies, Inc In the process of a collaborative design example as shown in figure 5, multiple members watching on the model and only one designer has the permission of operating on the model while other members can only watch or communicate each other by multimedia communication. In figure 5, the design service region was showing the shared screen and only one designer can operate on it at one time, the text communication region was showing the content of communication information between members, all the online users were listed in user region, there are four video images can be seen in the figure and the lower right corner is the audio & video service region. 5 Conclusions Collaborative design is an important technology of advanced manufacturing model while NCDS is an effective tool for realizing it. From the viewpoint of developing a NCDS, several key technologies were analyzed and a NCDS was developed successfully in this paper. The current version is only provided an environment for collaboration design and our future work is to integrate it with PDM software. Acknowledgements This paper is supported by National Natural Science Fund Project of China (contract no.50620130441), Scientific and Technological Project of Wuhan City (contact no. 200810321153) and Youth Science and Technology Chen Guang Project of Wuhan City (contact no. 200750731289). References [1] Gao Shuming, He Fazhi. Survey of distributed and collaborative design. Journal of computer-aided design & computer graphics, 16(2) (2004) 149~157. [2] Tian ling, Chen Jizhong, Zhao Huishe. Net-based collaborative design tools. Journal of China mechanical engineering, 15(19) (2004) 1774~1777. [3] Xu Baomin,WangLixin. Concept and Implementation of Improved Application Shared. Journal of Computer engineering, 29(11) (2003) 161~162. [4] Ci Jianwei,Zhang Huazhong. Research on real-time video dealing methods of multimedia network. Journal of Computer engineering, 31(2) (2005) 193~194. [5] He Fazhi. Research on collaboration support technology and tool for CSCW based CAD system. Wuhan: Dissertation of Wuhan University of Technology,2000.