Toolstring overview

合集下载

个人健康管理软件系统详细设计说明书

个人健康管理软件系统详细设计说明书

个人健康管理软件系统详细设计说明书1Introduction 简介1.1Purpose 目的本文档是规定基于Android平台的个人健康管理系统软件项目的概要设计说明书,描述了个人健康管理系统软件的概要设计,目的是为该系统的详细设计、开发和测试提供指导。

1.2Scope 围本文档包括该软件涉及到的所有的总体设计,包括设计思路,系统结构,分解描述,依赖性描述和接口描述等。

2模块详细设计2.1HomeActivity2.1.1 Design Description模块设计描述2.1.2.1 HomeActivity 主界面(1)CI Identification标识首界面—activity(2)Overview简介该类用于显示首界面,包含主体的五大模块等。

(3)Definition类定义(Optional)2.2HfileActivity2.2.1 Design Description模块设计描述2.2.1.1HfileActivity 电子健康档案(1)CI Identification标识健康档案—HfileActivity(2)Overview简介该界面是电子健康档案模块的主界面,包括医疗用药管理、家庭小药箱、体检报告、健康日志、指标列表、用药时间提醒。

(3)Definition类定义(Optional)2.3YLypActivity2.3.1 Design Description模块设计描述2.3.1.1YLypActivity 医疗用药信息管理(1)CI Identification标识医疗药品—YLypActivity(2)Overview简介该界面是医疗用药信息管理模块的主界面,包括对医疗用药的添加、删除、查询等功能。

(3)Definition类定义(Optional)2.3.2 Function Illustration功能实现说明2.4JTyxActivity2.4.1 Design Description模块设计描述2.4.1.1JTyxActivity 家庭小药箱(1)CI Identification标识家庭小药箱—JTyxActivity(2)Overview简介该界面是家庭小药箱模块的主界面,包括添加、删除、查询以及查看家庭药品的功能。

languagetool代码解析

languagetool代码解析

languagetool代码解析摘要本文档将介绍la ng ua g et oo l代码的解析过程。

我们将从代码的结构和功能入手,对其进行逐步解析和说明。

l a ng ua ge to ol是一款强大的语法和拼写检查工具,为作者和编辑提供了极大的便利。

有了这个工具,我们可以轻松检查并纠正文本中的错误,提高文档的质量和准确性。

目录1.介绍2.功能特点-拼写检查-语法检查-风格检查-分析功能3.代码结构-核心模块-插件系统-A PI接口4.使用示例-安装与配置-文本检查-自定义规则5.总结1.介绍l a ng ua ge to ol是一款开源的语法和拼写检查工具,主要用于检查文本中的语法错误、拼写错误和风格问题。

其功能强大、易于使用,并且支持多种语言。

la ng ua g et oo l的代码结构清晰,具有良好的可扩展性,用户可以根据自己的需求进行定制化配置,并增加新的检查规则。

2.功能特点拼写检查l a ng ua ge to ol可以对文本进行拼写检查,能够自动识别出拼写错误的单词,并提供正确的拼写建议。

该功能大大提高了编辑文档的效率,并减少了拼写错误带来的尴尬。

语法检查l a ng ua ge to ol能够检测文本中的语法错误,并给出相应的错误提示和修正建议。

通过标记出错的位置和指导用户修改,它可以有效地帮助作者和编辑提升文档的质量和流畅度。

风格检查l a ng ua ge to ol能够检查文档中的风格问题,例如使用被动语态、过度使用缩写、长句子等等。

它能够识别出这些问题,并给出相关的建议,使文档更加易读和易懂。

分析功能l a ng ua ge to ol还具备强大的分析功能,可以统计文本中不同类型错误的数量、频率和分布情况。

通过分析结果,用户可以了解文档的整体质量以及存在的问题,以便进行有针对性的改进和修正。

3.代码结构核心模块l a ng ua ge to ol的核心代码包括了拼写检查、语法检查和风格检查的实现。

trimAl Phylogenetics Alignment Trimming Tool说明书

trimAl  Phylogenetics Alignment Trimming Tool说明书

trimAl: a tool for automated alignment trimming in large-scale phylogenetics analyses Salvador Capella-Gutiérrez, Jose M. Silla-Martínez and Toni GabaldónTutorialVersion 1.2trimAl tutorialtrimAl is a tool for the automated trimming of Multiple Sequence Alignments. A format inter-conversion tool, called readAl, is included in the package. You can use the program either in the command line or webserver versions. The command line version is faster and has more possibilities,so it is recommended if you are going to use trimAl extensively.The trimAl webserver included in Phylemon 2.0 provides a friendly user interface and the opportunity to perform many different downstream phylogenetic analyses on your trimmed alignment. This document is a short tutorial that will guide you through the different possibilities of the program.Additional information can be obtained from where a more comprehensive documentation is available.If you use trimAl or readAl please cite our paper:trimAl: a tool for automated alignment trimming in large-scale phylogenetic analyses.Salvador Capella-Gutierrez;Jose M.Silla-Martinez;Toni Gabaldon.Bioinformatics 2009 25: 1972-1973.If you use the online webserver phylemon or phylemon2, please cite also this reference:Phylemon:a suite of web tools for molecular evolution,phylogenetics and phylogenomics.Tárraga J, Medina I, Arbiza L, Huerta-Cepas J, Gabaldón T, Dopazo J, Dopazo H. Nucleic Acids Res. 2007 Jul;35 (Web Server issue):W38-42.1. Program Installation.If you have chosen the trimAl command line version you can download the source code from the Download Section in trimAl's wikipage.For Windows OS users, we have prepared a pre-compiled trimAl version to use in this OS. Once the user has uncompressed the package, the user can find a directory,called trimAl/bin, where trimAl and readAl pre-compiled version can be found.Meanwhile for the OS based on Unix platform, e.g. GNU/Linux or MAC OS X, the user should compile the source code before to use these programs. To compile the source code, you have to change your current directory to trimAl/source and just execute "make".Once you have the trimAl and readAl binaries program, you should check if trimAl is running in appropriate way executing trimal program before starting this tutorial.2. trimAl. Multiple Sequence Alignment dataset.In order to follow this tutorial, we have prepared some examples. These examples have been taken from and you can use the codes from these files to get more information about it in this database.You can find three different directories called Api0000038, Api0000040 and Api0000080 with different files. The directory contains these files:A file .seqs with all the unaligned sequences.A file .tce with the Multiple Sequence Alignment produced by T-Coffee1.A file .msl with the Multiple Sequence Alignment produced by Muscle2.A file .mft with the Multiple Sequence Alignment produced by Mafft3.A file .clw with the Multiple Sequence Alignment produced by Clustalw4.A file .cmp with the different names of the MSAs in the directory. This file would be used by trimAl to get the most consistent MSA among the different alignments.You can use any directory to follow the present tutorial.3. Useful trimAl's features.Among the different trimAl parameters, there are some features that can be useful to interpret your alignment results:-htmlout filename. Use this parameter to have the trimAl output in an html file. In this way you can see the columns/sequences that trimAl maintains in the new alignment in grey color while the columns/sequences that have been deleted from the original alignment are in white color.-colnumbering. This parameter will provide you the relationship between the column numbers in the trimmed and the original alignment.-complementary. This parameter lets the user get the complementary alignment, in other words,when the user uses this parameter trimAl will render the columns/sequences that would be deleted from the original alignment.-w number. The user can change the windows size, by default 1, to take into account the surrounding columns in the trimAl's manual methods. When this parameter is fixed, trimAl take into account number columns to the right and to the left from the current position to compute any value, e.g. gap score, similarity score, etc. If the user wants to change a specific windows size value should use the correspond parameter-gw to change window size applied only a gap score assessments, -sc to change window size applied only to similiraty score calculations or -cw to change window size applied only to consistency part.4. Useful trimAl's/readAl's features.Both programs, trimAl and readAl, share common features related to the MSA conversion. It is possible to change the output format for a given alignment, by default the output format is the same than the input one, you can produce an output in different format with these options: -clustal. Output in CLUSTAL format.-fasta. Output in FASTA format.-nbrf. Output in PIR/NBRF format.-nexus. Output in NEXUS format.-mega. Output in MEGA format.-phylip3.2. Output in Phylip NonInterleaved format.-phylip. Output in Phylip Interleaved format.5. Getting Information from Multiple Sequence Alignment.trimAl computes different scores, such as gap score or similarity score distribution, from a given MSA. In order to obtain this information, we can use different parameters through the command line version.To do this part,we are going to use the MSA called Api0000038.msl.This file is in the Api0000038 directory.$ cd Api0000038$ trimal -in Api0000038.msl -sgt$ trimal -in Api0000038.msl -sgc$ trimal -in Api0000038.msl -sct$ trimal -in Api0000038.msl -scc$ trimal -in Api0000038.msl -sidentYou can redirect the trimAl output to a file. This file can be used in subsequent steps as input of other programs, e.g.gnuplot,,microsoft excel,etc,to do plots of this information.$ trimal -in Api0000038.msl -scc > SimilarityColumnsFor instance, in the lines below you can see how to plot the information generated by trimAl using the GNUPLOT program.$ gnuplotplot 'SimilarityColumns' u 1:2 w lp notitleset yrange [-0.05:1.05]set xrange [-1:1210]set xlabel 'Columns'set ylabel 'Residue Similarity Score'plot 'SimilarityColumns' u 1:2 w lp notitleexitIn this other example you can see the gaps distribution from the alignment. This plot also was generated using GNUPLOT$ trimal -in Api0000038.msl -sgt > gapsDistribution$ gnuplotset xlabel '% Alignment'set ylabel 'Gaps Score'plot 'gapsDistribution' u 7:4 w lp notitleexit6. Using user-defined thresholds.If you do not want to use any of the automated procedures included in trimAl (see sections 7 and 8) you can set your own thresholds to trim your alignment. We will use the parameter -htmlout filename for each example so differences can be visualized. In this example, we will use the Api0000038.msl file from the Api0000038 directory.Firstly, we are going to trim the alignment only using the -gt value which is defined in the [0 - 1] range. In this specific example, those columns that do not achieve a gap score, at least, equal to 0.190, meaning that the fraction of gaps on these columns are smaller than this value, will be deleted from the input alignment.$ trimal -in Api0000038.msl -gt 0.190 -htmlout ex01.htmlYou can see different parts of the alignment in the image below.This figure has been generated from the trimAl's HTML file for the previous example.In this other example, we can see the effect to be more strict with our threshold. An usual consequence of higher stringency is that the trimmed MSA has fewer columns. Be careful so you do not remove too much signal$ trimal -in Api0000038.msl -gt 0.8 -htmlout ex02.htmlTo be on the safe side, you can set a minimal fraction of your alignment to be conserved. In this example,we have reproduced the previous example with the difference that here we required to the program that, at least, conserve the 80% of the columns from the original alignment. This will remove the most gappy 20% of the columns or stop at the gap threshold set.$ trimal -in Api0000038.msl -gt 0.8 -cons 80 -htmlout ex03.htmlSecondly,we are going to introduce other manual threshold-st value.In this case,this threshold,also defined in the[0-1]range,is related to the similarity score.This score measures the similarity value for each column from the alignment using the Mean Distance method, by default we use Blosum62 similarity matrix but you can introduce any other matrix (see the manual). In the example below, we have used a smaller threshold to know its effect over the example.$ trimal -in Api0000038.msl -st 0.003 -htmlout ex04.htmlIn this example, similar to the previous example, we have required to conserve a minimum percentage of the original alignment in a independent way to fixed by the similarity threshold.A given threshold maintains a larger number of columns than the cons threshold, trimAl selects this first one.$ trimal -in Api0000038.msl -st 0.003 -cons 30 -htmlout ex05.htmlThirdly, we are going to see the effect of combining two different thresholds. In this case, trimAl only maintains those columns that achieve or pass both thresholds.$ trimal -in Api0000038.msl -st 0.003 -gt 0.19 -htmlout ex06.htmlFinally, we are going to see the effect of combining two different thresholds with the cons parameter. In this case, if the number of columns that achieve or pass both thresholds is equal or greater than the percentage fixed by cons parameter, trimAl chose these columns. However, if the number of columns that achieve or pass both thresholds is less than the number of columns fixed by cons parameter, trimAl relaxes both to thresholds in order to retrieve those columns that lets to achieve this minimum percentage.$ trimal -in Api0000038.msl -st 0.003 -gt 0.19 -cons 60 -htmlout ex07.html7. Selection of the most consistent alignment.trimAl can select the most consistent alignment when more than one alignment is provided for the same sequences (and in the same order) using the -compareset filename parameter. To do this part, we are going to move to Api0000040 directory, we can find there a file calledApi0000040.cmp listing the alignment paths. Using this file, we execute the instruction below to select the most consistent alignment among the alignment provided$ trimal -compareset Api0000040.cmpAs in previous section, once trimAl has selected the most consistent alignment, we can get information about the alignment selected using the appropriate parameters. For example, we can use the follow instructions to know the consistency value for each column in the alignment or its consistency values distribution$ trimal -compareset Api0000040.cmp -sct$ trimal -compareset Api0000040.cmp -sccAlso, we can trim the selected alignment using a specific threshold related to the consistency value. To do that, we should use the -ct value where the value is a number defined in the [0 - 1] range. This number refers to the average conservation of residue pars in that column with respect to the other alignments.$ trimal -compareset Api0000040.cmp -ct 0.6 -htmlout ex08.htmlOn the same way than the previous section, we can define a minimum percentage of columns that should be conserve in the new alignment. For this purpose, we have to use the cons parameter as we explained before.$ trimal -compareset Api0000040.cmp -ct 0.6 -cons 50 -htmlout ex09.htmlFinally, we can combine different thresholds, in fact, we can use all of them as well as we can define a minimum percentage of columns that should be conserve in the output alignment. In the line below, you can see an example of this situation.$ trimal -compareset Api0000040.cmp -ct 0.6 -cons 50 -gt 0.8 -st 0.01-htmlout ex10.html8. Applying automated methods.One of the most powerful aspects of trimAl is that it provides you with several automated options.This option will automatically select the most appropriate thresholds for your alignment after examining the distribution of various parameters along your alignment. Among the alignment features that trimAl takes into account to compute these optimal cut-off are the gap distribution, the similarity distribution, the identity score, etc.You can find a complete explanation about all of these methods in the trimAl's Publications Section.Here,we provide some examples on how to use these methods.The automated methods, gappyout, strict and strictpus, can be used independently if you are working with one or more than one alignment, in the last case, for the same sequences.In the lines below, you can see how to use the gappyout method in both ways. This method will eliminate the most gappy fraction of the columns from your alignment. For this, we are going to continue using the same directory than the previous section.$ trimal -compareset Api0000040.cmp -gappyout -htmlout ex11.html$ trimal -in Api0000040.mft -gappyout -htmlout ex12.htmlIn this case, we are going to use the same files than in the example before but we have changed the method to trim the alignmnet. Now, we are using strict and strictplus methods. These two methods combine the information on the fraction of gaps in a column and their similarity scores, being strictplus for more stringent than strict method.$ trimal -compareset Api0000040.cmp -strict -htmlout ex13.html$ trimal -in Api0000040.clw -strictplus -htmlout ex14.htmling an heuristic method to decide which is the best automated method for a given MSA.Finally, we implemented an heuristic method to decide which is the best automated method to trim a given alignment. The heuristic method takes into account alignment features such as the number of sequences in the alignment as well as some measures about the identity score among the sequences in the alignment or among the best pairwise sequences in that MSA. According to these characteristics trimAl will decide upon one of the two automated methods (gappyout or strictplus).To illustrate how to use this method, we provide a couple of example using the same directory than the section before. First, we used trimAl to selecte the most consistent alignment and then we trimmed that alignmnet using our heuristic method.$ trimal -compareset Api0000040.cmp -automated1 -htmlout ex15.htmlThen, we trim a single MSA using the previously mentioned method.$ trimal -in Api0000040.msl -automated1 -htmlout ex16.html10. Getting more information.We hope that this short introduction to trimAl's features has been useful to you.We advise you to visit periodically the trimAl's wikipage()where you could get the latest news about the program as well as more information, examples, etc, about trimAl's package. You can also subscribe to the mailing list if you want to be updated in new trimAl developing.11. References.1.T-Coffee: A novel method for fast and accurate multiple sequence alignment.Notredame C, Higgins DG, Heringa J. J Mol Biol. 2000 Sep 8;302(1):205-17.2.MUSCLE:multiple sequence alignment with high accuracy and highthroughput. Edgar RC.Nucleic Acids Res. 2004 Mar 19;32(5):1792-7.3.MAFFT: a novel method for rapid multiple sequence alignment based on fastFourier transform. Katoh K, Misawa K, Kuma K, Miyata T. Nucleic Acids Res. 2002 Jul 15;30(14):3059-66.4.CLUSTAL W:improving the sensitivity of progressive multiple sequencealignment through sequence weighting,position-specific gap penalties and weight matrix choice. Thompson JD, Higgins DG, Gibson TJ. Nucleic Acids Res. 1994 Nov 11;22(22):4673-80.。

Spirent overview 中文说明

Spirent overview 中文说明

為因應公司承接儲存產品方案的CASE及相關的測試能力, 小弟這週緊鑼密鼓的學習這套SPIRENT 公司所開發並整合原先旗下產品(SmartBits與AX/4000)所推出的一套全新的測試工具SPIRENT T estCenter . 測試的範圍包括完整的Layer 2至Layer 7 , 但目前似乎我所要學習的只針對RFC2544(Benchmarking Methodology for Network Interconnect Devices)來做測試, 那RFC2544到底是什麼呢? 它是定義Gigabit乙太網路產品設計檢驗的測試方法及標準並檢驗部署在互連網路上的Layer 2和Layer 3 switchs的PERFORMANCE.這一套測試工具在操作介面上還蠻有親和力的, 主要的FUNCTION BUTTON只有(Chassis / T echnology Selector / Command Sequencer / Reporter / Wizards / Summary) 這六種, 但對我目前使用上來說較常使用到的FUNCTIONS只有下列這四項- Chassis (連結至SPIRENT T estCenter 10G Ethernet XFP T est Modules)- Sequencer (對測量所使用的測試腳本內容參數做更新)- Reporter (產生及檢視多種格式的測試報告)- Wizards (產生所要量測的測試腳本)這台SPIRENT T estCenter測試的FUNCTIONALITY還不少呢, 但我只針對目前所使用到的RFC2544測試範疇來做簡單的陳述報告. RFC2544是定義互聯網路裝置的測試方法,有下列這四個項目是需要來量測互聯網路上的裝置如1. Throughtput2. Latency3. Frame Loss4. Back to Back就這四個量測的定義及方法來說就需要參考到RFC1242和RFC2544了Throughtput :(RFC1242定義)在沒有Packet Loss及error產生的情況下,DUT所能承受的最大傳輸量(Forwarding Rate)Throughtput :(RFC2544量測方法)封包長度(Specific frame)和測試時間(Specific rate)固定不變 . 藉由改變Traffic Loading大小, 來找出Throughput的值, 也就是利用固定的Rate來送一段的封包, 假如收到的封包數等於傳送的封包數並且沒有Packet loss及error , 我們就增加Traffic Loading ; Rate往上增加重複測試; 若收到的封包數少於送出的封包數就減少Traffic Loading , 重複至最大的Traffic Loading並沒有Packet Loss來找出這個Throughput值 .Latency:(RFC1242定義)封包經過DUT所花費(延遲)的時間稱為Latency* For Bit - Forwarding (Cat - through) device量測的方式是封包的第一個bit進去待測物DUT , 開始算時間一直到封包的第一個bit出來待測物後停止, 這一段所經過的時間叫做Cut-through 的Latency ; 這種量測方式也叫做Frist In Frist Out (FIFO)* For Store and Forward封包的最後一個bit 進去待測物DUT後開始算時間一直到第一bit 出來後停止; 中間所經過的時間稱之Store and Forward Latency ; 這種量測方式也叫做Last In Frist Out (LIFO)Latency :(RFC2544量測方法)必須在穩定的流量下來進行測試, 也就是說不能超過待測物的負荷下來進行測試Frame Loss :(RFC1242定義)封包經過待測物所遺失的封包數量Frame Loss :(RFC2544量測方法)利用固定的封包長度送一個固定的時間後, 這樣的收送狀況到底遺失多少的封包數量, 不同的百分比traffic loading 來量測Frame Loss.Back to Back :(RFC1242定義)測試DUT 的Buffering Capability ; 以最快的速度來量測封包, 到底有多少的封包傳進DUT 是不會有Packet Loss , 並找出這個封包數是多少Back to Back :(2544量測方法)利用封包和封包之間的最小間隔來傳送封包; 也就是說利用最大的Loading 來傳送這個封包, 接收端若能收到這個封包就增加封包的數量來傳送.簡單的描述這四個量測項目的定義和量測方法, 有興趣的Guys 應該有了初步的瞭解, 至於操作介面的部份各位爾後若有機會接觸其實上手應不至於太困難我就不贅述了, 僅以一個主畫面讓各位看看囉! 但理解及分析所要量測的目的才是重點, 這一篇就到此告一段落, 若有筆誤或不妥之處請各位留言指正或相互交流囉!。

Anybus Communicator for LonWorks- LWTool 说明书

Anybus Communicator for LonWorks- LWTool 说明书

User Manual Anybus Communicator for LonWorks-LWToolRev. 1.1 HMS Industrial Networks ABGermany Japan Sweden U.S.A. France Italy China ☎+49 - 721 – 96472 – 0+81 - 45 – 478 – 5340+46 - 35 – 17 29 20+1 - 312 – 829 – 0601+33 - 3 89 32 76 76+39 - 347 – 00894 -70+86 - 10 – 8532 – 3183✉****************************************************************************************************************************************************************************Table of ContentsTable of ContentsPreface (1)About This Document (1)How To Use This Document (1)Important User Information (1)Revision List (2)Support (3)About the ABC LON-RTU Slave (1)Overview (1)Connectors (2)LED (2)LonWorks Connector (3)RS232/RS422/RS485 (3)Power connector (3)General (4)Software Installation (6)System Requirements (6)Minimum: (6)Recommended: (6)Installation Procedure (6)User Interface information (7)Node Menu (7)Network Variable Menu Explanation (8)Config Properties Menu (9)File Management (10)Templates (10)External Interface Files (.XIF) (10)Node Documentation Files (.HTML) (10)Configuration Files (.DAT) (10)Create a non-LonMark Compliant Project & Add Network Variables (11)Open an Existing Project & Import an Object with Predefined Variables (12)Create a LonMark Compliant Project & Add an Empty Object ............ Error! Bookmark not defined.Download Program (13)Preface PrefaceAbout This DocumentHow To Use This DocumentThis document contains a general introduction as well as a description of the technical features provided by theAnybus Communicator, including the PC-based configuration softwareThe reader of this document is expected to be familiar with industrial networking systems, and communicationsystems in general.For more information, documentation etc., please visit the HMS website, …‟.Important User InformationThe data and illustrations found in this document are not binding. We, HMS Industrial Networks AB, reserve the right to modify our products in line with our policy of continuous product development. The information in this document is subject to change without notice and should not be considered as a commitment by HMS Industrial Networks AB. HMS Industrial Networks AB assumes no responsibility for any errors that may appear in thisdocument.There are many applications of this product. Those responsible for the use of this device must ensure that all the necessary steps have been taken to verify that the application meets all performance and safety requirementsincluding any applicable laws, regulations, codes, and standards.Anybus® is a registered trademark of HMS Industrial Networks AB. All other trademarks are the property of their respective holders.The examples and illustrations in this document are included solely for illustrative purposes. Because of the many variables and requirements associated with any particular implementation, HMS Industrial Networks cannot assume responsibility or liability for actual use based on these examples and illustrations.Revision ListSupportHMS Sweden (Head Office)E-mail: ************************Phone: +46 (0) 35 - 17 29 20Fax: +46 (0) 35 - 17 29 09Online: HMS North AmericaE-mail: ***************************Phone: +1-312-8290605Toll Free: 888-8-AnybusFax: +1-312-738-5873Online: HMS GermanyE-mail: ***************************Phone: +49-721-96472-0Fax: +49-721-964-7210Online: HMS JapanE-mail: ***************************Phone: +81-45-478-5340Fax: +81-45-476-0315Online: HMS ChinaE-mail: ***************************Phone: +86 10 85 32 3023Online: HMS ItalyE-mail: ***************************Phone: +39 039 59662 27Online: 1 About the Anybus Communicator for LonWorksOverviewThe Anybus Communicator for LonWorks, or …ABC‟ is a product that interfaces between a ModBus RTU network and a LonWorks network. The gateway acts as ModBus slave. All data in the variables are presented in the ModBus registers without any interference; no calculations, scaling or customizations are made.The gateway makes it possible to convert ModBus registers data to Lon Works Variables (SNVT‟s and/or UNVT‟s).You can create a set of variables according to LonMark functional Profiles or you can create your own set ofvariables with User defined Network Variables (UNVT‟s). Configuration is made with the configuration tool “ABC LWTool” which can be purchased from HMS. Holding registers (4X reference) will be connected to network output variables (NVO).Input registers (3X reference) will be connected to network input variables (NVI).ConnectorsLEDLEDLonWorks ConnectorRS232/RS422/RS485Power connectorLonWorks connectorConfiguration connectorRS232/RS422/RS485Power connectorPin 1DIN rail mounting2Introduction to LWToolThe ABC LWTool is an easy to use configuration tool suitable for the Anybus Communicator interface. It provides a user friendly way of specifying a desired set of network variables and map them to ModBus registers. The finished configuration can then be downloaded via the HMS LWDownload utility,see 13 “ConfigDownload Program”A fast learning curve and visual user interface allows complete network configurations to be built without spendingprecious time learning a new program.(For installation instructions, see 4-1 “Software Installation”).Nodes can be customized to fit a specific application. Customized configurations is be made up of User definedVariables only, while LonMark compliant nodes require predefined Standard Network Variables.Furthermore, projects and objects can be stored to build a custom library, resulting in a more efficient way to do the next project in the same area of application; just open a suitable project and make the necessary adjustments and/or add a suitable object.Software InstallationSystem RequirementsMinimum:∙Windows 98/ME/NT/2000/XP/Vista∙Pentium class CPU running at 133MHz∙32Mb RAM∙800x600 resolution color displayRecommended:∙Windows 98/ME/NT/2000/XP∙Pentium class CPU running at 200MHz or higher∙64Mb RAM∙1024x768 resolution display∙16 bit colorInstallation ProcedureThe installation screen should appear automatically when inserting the supplied software CD. If not, open the CD device and double click on …\index.html‟.•Install ABC LWTool by clicking …LWTool‟ and follow the on screen instructions.•Install the serial hardware driver by clicking …Hardware driver‟ and follow the on screeninstructions.•Click…Readme.txt‟ to read supplementary information such as release notes etc.User Interface informationNode MenuWhen starting the LWTool program you will see the following windows on the screen:1.Additional infoThis information will be presented in the Self Documentation string, seen by the network Management tool.Choose a suitable name for your node.2.Program IDHere you chose if you are going to do a configuration that should comply with a LonMark approved Functional Profile or not. NOTE! The possibility to create LonMark configurations is disabled by default. Please contact************** if you need to create a LonMark configuration.∙LonMarkWhen choosing LonMark, the boxes need to be filled in. This can be generated with the Program IDcalculator. Consult the LONMARK® Application Layer Interoperability Guidelines for moreinforamtion∙ASCIIThis field is used when no LonMark profiles are used. You can write max. 8 character as a description ofthe node/product in ASCII format.work variable alias tableNetwork variable aliases are required on a node when a single network variable output on the node must beconnected to two or more network variable inputs on another node.4.Standard transceiver typeThis Gateway only supports the FTT-10 Transceiver type.Network Variable Menu ExplanationWhen adding a Network Variable, the following windows will be shown on the screen:The name should start with nvi or nvo depending on if it is an input or an output,i.e. nviChillerEnable, nvoOnOff2.SNVT TypeIn this field you can change the SNVT type, or chose a User defined variable, UNVT. To easy find the SNVTvariable you want, start writing the variable name and you will see suggestions on names coming up.3.SNVT Type SizeIf selecting UNVT, you will have to set Variable type size. Otherwise it is just for your information.4.SelfdocThis string is auto generated. To understand the string, see LONMARK® Application Layer Interoperability Guidelines, chapter 5.5.Member NrThis is the variable index in the object. See the specific LonMark Profile object for more information. In the 8040 object, index of nviChillerEnable is 1, index of nvoActiveSetpt is 4 and so on.6.Add infoThis information will be placed after the semicolon in the self documentation string. Usually the info could beChillerEnable for nviChillerEnable.7.DirectionsHere you select the direction of the variables; the icon of the variable is green for input and red for outputvariables.8.ClassThis information is maintained from LonMark and is specified for each variable in the Object of a Profile.9.Default Service TypeSet default as Acknowledge; see LONMARK® Application Layer Interoperability Guidelines for furtherinformation.10.Service type may be modifiedSet if the network management tool will be able to change service type (recommended in most cases)e pollingThis functionality is for nvi´s only. If this option is selected, the ABC will send a network variable poll message to the connected nvo to synchronize the variable during start-up.Config Properties MenuWhen adding a Variable in the Configuration Properties, the following windows will appear:The name should begin with …nci‟, e.g. …nciLocation‟2.SelfdocFor non LonMark compliant nodes it is possible to add additional information (see previous page). ForLonMark compliant nodes, consult the LONMARK® Application Layer Interoperability Guidelines formore information about the self documentation string.3.SCPT TypeThis field specifies the SCPT variable type for the nci-name. If a user defined variable is used (UCPT),Index and Scope has to be entered. (see below)4.IndexWhen using UCPT variables, this field should contain the index number. (Consult the LONMARK®Application Layer Interoperability Guidelines for specific information.)5.ScopeThis field is only used when using UCPT variables, consult the LONMARK® Application LayerInteroperability Guidelines for specific information.6.SNVT TypeWhen using UCPT variables, this field should contain a suitable SNVT variable.7.ClassConsult the LONMARK® Application Layer Interoperability Guidelines for more information.8.Default Service TypeSet by default as …Acknowledged‟; consult the LONMARK® Application Layer Interoperability Guidelin esfor further information.9.Set initial value:This field is used to set the initial value in hexadecimal “raw-data” form, i.e. if the rangeof the variable is –163.840% to 163.830 (0.005%), this means that each step is 0.005%. If you want to set100% as default, it would be 100/0.005 which is 20000 = 4E,20 in HEX10.Only changeable when offline: When this option is enabled, it is only possible to make changes to thevariable when the node is off line.11.Service type may be modified: This option should be set if the network management tool should be ableto change the service type (recommended in most cases)12.Config applies to…: This entry defines the scope of the configuration property. Configuration propertiesthat belong to an object shall be declared as a part of the object and not declared as a part of the node.Similarly, a configuration property associated with a specific network variable(s) shall be declared asbelonging to the network variable(s) and not the object or the node. Consult the LONMARK®Application Layer Interoperability Guidelines for more information.File ManagementProject Files (.PRJ)The configuration can be saved for later use using the menu entries …Save‟ and …Save As...‟ in the …File‟ menu.To retrieve the saved project at a later stage, use the …Open‟ entry. Please note that project files cannot bedownloaded directly into the LonWorks interface. To do this, the project must be exported as a Configuration File (.DAT), see 3-6 “Configuration Files (.DAT)”.TemplatesProjects can be saved as templates to be used as a basis for new implementations. To create a new template, save the project in the …\templates\‟ sub folder in the ABC LWTool program folder. To use a template, select the …New‟ entry in the …File‟ menu. Select the desired template in the dialog box that follows and click …OK‟.External Interface Files (.XIF)This file is used by the Network Management tool when installing the LonWorks interface. To export a .XIF file, select the …XIF File‟ entry in the …Export‟ menu.It is also possible to import .XIF files fromexisting products with similarfunctionality to use as a basis for newimplementations. Node DocumentationFiles (.HTML)A node documentation file containsinformation about the configuration instandard .HTML format. To export anode documentation file, select the…Node Documentation (HTML)‟ entry inthe …Export‟ menu.Note: It is not possible to import NodeDocumentation files. Be sure to save theproject using the …Save‟/ …Save as‟ entriesin the …File‟ menu.Configuration Files (.DAT)The finished configuration can beexported as a.DAT file to be downloadedinto the LonWorks interface using theFirmware Download utility (see A-1 “HMSFirmware Download Utility”).Note: It is not possible to import .DAT files into the ABC LWTool utility. Be sure to save the project using the…Save‟ / …Save as‟ functions in the …File‟ menu.Create a non-LonMark Compliant Project & Add Network VariablesAfter starting ABC LWTool, select the …New‟ entry in the …File‟ menu, and choose …Empty Object‟. This gives the node a Virtual Object where network variables and Configuration Properties can be added by right clicking on …Network Variables‟/ ‟Configuration Properties‟, and choosing …Add Network variable‟/ …Add Config Property‟1.Select …Node‟ and enter a name for the node under …Additional info‟ in …Node Options‟2.Select …ASCII‟ and write max. 8 character name for …Program ID‟3.Enter no. of entries in the …Network Variable alias table‟4.Add network variables by right clicking on …Network Variables‟ and select …Add network variable‟5.Change the name of the variable to either to …nvi‟ or …nvo‟.6.Change SNVT type to UNVT (User defined).7.The …Member number‟ will increase automatically, but can be altered manually if necessary.8.Enter the nam e in …Add. info‟.9.Enter the length of the UNVT variable10.Select the direction of the variable (…In‟ or …Out‟)11.Select the …Manufacturer‟ entry under …Class‟12.Select the desired …Default Service Type‟13.If no special customer demands are required, enable …Service type may be modified‟14.…Use polling‟ - this functionality is for …nvi´s‟ only. If this option is selected, the LMS will send a networkvariable poll message to the connected …nvo‟ to synchronize the variable during start-up. Repeat until allnetwork variables are added15.Right click on …ConfigProperties‟ and select …AddConfig Property‟16.Enter the name of the variableusing …nci‟ in the beginning ofthe variable under …Name‟17.Enter the name without …nci‟under …Selfdoc‟18.Select SCPT type or use aUCPT if you need somethingnot listed. Note that whenusing UCPT, additionalinformation must be entered(…Variable Index‟ and …SNVTType‟)19.Choose Class20.Choose the Default ServiceType21.If necessary, set the initial value by clicking on the …Initial Value‟ button.22.Only changeable when offline: Make it possible to do changes to the variable only when the node isoffline23.Service type may be modified: Enable this option if the network management tool should be able tochange service type (recommended in most cases)24.Scope: This declaration defines the scope of the configuration property. Configuration properties thatbelong to an object shall be declared as a part of the object and not declared as a part of the node.Similarly a configuration property that is associated with a specific network variable(s) shall be declaredas belonging to the network variable(s) and not the object or the node. See LONMARK® ApplicationLayer Interoperability Guidelines for more information.25.Save the project using the …Save as‟ function in the …File‟ menu26.Export the project as XIF/Configuration File/Node Documentation file using the functions in the…Export‟ menu.Open an Existing Project & Import an Object with Predefined Variables1.Start ABC LWTool2.Click the right mouse button on …Node‟3.Select …Import object‟4.Select …8040_10 Chiller Controller.lbj‟5.Click …Open‟ConfigDownload ProgramIn your Start menu you will have an Icon for the download program under the menu for the LWTool. When you start you will see this window:1.Click File,open and chose the Configuration file (dat-file) you want to download into the gateway. You willsee that the Configuration information will change.2.Set the Address of the gateway and all the other ModBus specific settings3.Connect your gateway with the computer via the Configuration Cable. There are possibilities to changeCOM port under Settings.4.Power-up the gateway5.Press startIt is possible to change the communication settings only, without downloading a configuration file. To clear the.dat-file from the download program (if loaded), chose “new”. This will clear the information in the configuration information field (you will only have zeros in the fields). Change your settings and press START.。

techlog操作手册

techlog操作手册

数据加载一、TXT的加载Techlog的数据绝大部分是直接拖入到软件(含有中文字节的文本必须是unicode文本,如分层数据等),以forward格式的TXT数据为例:Import from line、Variable name line和Units line(根据数据的实际情况选择);Delimiter:下面的分割符号根据数据实际情况选择。

这里需要注意的是:keep consecutive separators(如果为YES就是每个符号都作为分隔符,如果为NO就是把连续的多个符号当着一个分隔符),forward格式的数据每列数据是由多个空格分割开的所有选择NO(每次修改后点击preview查看是否正确)。

给每列数据定义数据类型和单位,missing value detection rules:定义无效值规则(可以根据需要增加)。

注:本人更喜欢把TXT的数据复制到excel里面整理好,然后另存为CSV格式的,直接加载!数据定义好单位会少很多麻烦。

二、DLIS、LAS等标准格式的数据加载这种数据的加载需要注意的是不能放在中文目录下面,最好文件名也是英文的。

直接拖入加载即可(成像数据的加载需要在impor buffer的属性里面把launch a script after loading the file in the import buffer—script to be launched 改为techlog\wbiImport,只需要改一次,以后再加载成像数据就不用再修改了)。

三、岩心照片的加载Home-import打开加载数据缓冲区选择images import with wizard(岩心照片名称格式为顶深-底深的格式),找到岩心照片所在的文件夹,用shift或者ctrl可以批量加载照片。

注意:井名和深度单位需要自己给,最好把copy all images into the project打上勾,然后加载即可。

sonar tostring方法

sonar tostring方法

sonar tostring方法Sonar 的 toString 方法概述`toString` 方法是 Java 中 Object 类的成员方法,它返回一个字符串表示形式,描述了该对象的内部状态。

对于 Sonar(声纳)类,`toString` 方法提供了有关声纳设备及其当前配置的详细信息。

方法签名```javapublic String toString()```返回值`toString` 方法返回一个字符串,其中包含有关 Sonar 设备的以下信息:设备 ID设备类型设备状态当前配置设置示例考虑一个配置为使用特定频率和带宽的 Sonar 设备。

`toString` 方法将产生类似于以下内容的字符串:```Sonar [ID: 12345]Type: Side-scan SonarStatus: ActiveFrequency: 200 kHzBandwidth: 500 Hz```自定义 toString 方法虽然 `toString` 方法默认提供了有关 Sonar 设备的基本信息,但可以自定义此方法以提供更具体的详细信息或应用自定义格式。

要自定义 `toString` 方法,请在 Sonar 类中覆盖此方法并使用以下语法:```java@Overridepublic String toString() {// 自定义的字符串表示形式return "自定义字符串";}```优点自定义 `toString` 方法提供了以下优点:更好的可读性:可以设计自定义字符串表示形式,使其更易于人类阅读和理解。

更详细的信息:可以包括有关 Sonar 设备的更多信息,例如传感器数据、处理算法或其他相关设置。

自定义格式:可以使用自定义格式对字符串表示形式进行格式化,例如 JSON、XML 或特定于应用程序的格式。

最佳实践在自定义 `toString` 方法时,请考虑以下最佳实践:提供简洁而有意义的信息。

Customization_Tool_Implementation

Customization_Tool_Implementation

Revision HistoryRevision Date Author Comments1.0 31/10/03 Ashish G.First Release1.1 15/12/03 Yogesh Incorporated the review comments from Pluto1.2 27/01/04 Rajshree Review comments incorporated and added a section onthe implementation of Skin change for the MMISimulator.Table of ContentsRevision History (2)Table of Contents (3)1 Scope (5)2 Resources (6)3 Different build passes available (7)3.1DEVELOPER_BUILD_FIRST_PASS: (7)3.2DEVELOPER_BUILD_SECOND_PASS: (7)3.3CUSTOMIZATION_BUILD_FIRST_PASS: (7)3.4CUSTOMIZATION_BUILD_SECOND_PASS: (7)3.5CUSTOMIZATION_BUILD_FINAL_PASS: (7)Using Customization Tool (8)4 ApplicationCustomization4.1How to add a new customizable application in MMI (8)5 Image Customization Using Customization Tool (10)5.1How to add a new customizable image in an application (10)5.2Three files are updated while doing image Addition / Modification / Customization: (10)5.2.1CustImgDataHW.h (10)5.2.2CustImgRes.C (11)5.2.3NcustImageNames: (11)5.2.4ImageNameList: (11)5.3CustImageMap.C (11)5.3.1ImageIdMap: (11)5.3.2ImageIdSearchMap: (12)5.4How to Modify Images in MMI (12)5.4.1Add/Modify by making changes in ADD_APPLICATION_IMAGE2: (12)5.4.2Using customization tool: (12)5.5Image Formats supported (13)6 String Customization Using Customization Tool (14)6.1How to add a new customizable String in an application (14)6.2Following tables get updated while doing String Addition/Modification/ Customizations: (14)6.2.1StrRes_XX (Present in CustStrRes.C ): (14)6.2.2StrMap_XX (present in CustStrMap.C): (14)6.2.3StrMapSearch (Present in CustStrRes.C ): (15)6.2.4GStringList (Present in CustStrRes.C ): (15)6.3How to Modify Strings in MMI (16)6.3.1Add/Modify by making changes in ADD_APPLICATION_STRING2: (16)6.3.2Using customization tool: (16)Customization (17)7 Menu7.1How to add a customizable menu in MMI (17)7.2FollowingTables are updated while doing Menu Addition/ Modification/ Customizations: (17)7.2.1nOrderMenuItem_XXX (Present in CustMenuRes.C ): (17)7.2.2nCustMenus (Present in CustMenuRes.C ): (18)7.3How to Modify Menus in MMI (19)7.3.1Add/Modify by making changes in ADD_APPLICATION_MENUITEM: (19)7.3.2Using customization tool: (19)7.3.2.1Child level menu can be moved from one menu list to another menu list (19)7.3.2.2Child level menu can be moved from parent menu to Shortcuts (19)Customization (20)8 Theme8.1Overview (20)8.1.1Customization of Theme Components (21)8.1.2Customization of Themes (25)8.2General Control and Screen Flow (25)8.2.1.1Creating New Theme Component (25)8.2.1.2Customize Existing Theme Component (27)8.2.1.3Creating New Themes (28)8.2.1.4Customize Existing Theme (29)8.3Design Overview (29)8.4ThemeRes.C (29)8.4.1theme_Classic: (29)8.4.2MMI_themes: (29)8.5ThemeComponents.h (30)8.5.1UI_filled_area: (30)8.5.2Color: (30)8.6Themecomponentsx.h (31)8.7ThemeResTable.c (31)9 Font and language Customization Using Customization Tool (32)9.1Data Structures (32)9.2FontRes.C (34)10 DCML and Customization Tool (35)10.1How does the DCML works (35)10.2DTD for DCML File (35)10.3Major Elements Of DCML File (41)A (48)11 Appendix1 ScopeThe scope of this document is limited to explaining how the customization tool actually implements the customization on Images, Strings, & Menus used in the Pixtel MMI. The document also explains the files changed in theDEVELOPER_BUILD_FIRST_PASS, CUSTOMIZATION_BUILD_FIRST_PASS, CUSTOMIZATION_BUILD_FINAL_PASS.2 ResourcesCustomization tool can be used to customize the Pixtel MMI based phone before delivering it to the customer. It is can be used to alter the values of strings, shuffle the menus and change the image. The tool allows users to change/ add themes, languages and fonts in the MMI.Customization tool generates resource files for MMI. These resource files contain the new customized values. The new values can then be compiled into the MMI using the Customization tool second pass.All the files that are modified by the customization tool are in the..\\MMI-SrcCode\Customer\CustResource folder.The resource files are also modified in the DEVELOPER_BUILD_FIRST_PASS. This pass will reset all the changes made in the Customization tool and bring the resources back to the initial state. So this pass should be used keeping in mind that all the changes from the tool will be reset to the Original default values.The ADD_APPLICATION_XXXX macros are used to add strings/images/menu items in an application. The Pixtel MMI while undergoing DEVELOPER_BUILD_FIRST_PASS regenerates the CustResource files. Customization tool Second pass and Final pass also generate the resource files. Along with the resource files the font files and theme files are also generated from the tool. For more details on how to use the customization tool please refer to ‘User Manual For Customization Tool.doc Release 1.1’.3 Different build passes available.There are essentially 5 types of build passes that are used:Which are explained below:3.1 DEVELOPER_BUILD_FIRST_PASS:Whenever new resource is added the code (new resource can be a new string or new image etc) the code has to be compiled using this pass. When code is compiled using this pass all the CustResource files are created afresh. When the executable thus formed is executed, all the strings and images are populated.During this pass DCML file is vacated first, after DEVELOPER_BUILD_FIRST_PASS DCML file contains only Strings info, Images info and Menus info.3.2 DEVELOPER_BUILD_SECOND_PASS:This is a normal final build, which is done to use the deployed resources. And the code is compiled with the new resource files. No new resource generation is done in this pass. This is customer deliverable without customization enabled.3.3 CUSTOMIZATION_BUILD_FIRST_PASS:Used for building MMI with customization enabled this means if a user customizes his phone and builds it in this pass the exe generated will have the customize option enabled. Also source code is required to complete this pass. The object files will be generated for the next pass to link after customization (if at all) is done.3.4 CUSTOMIZATION_BUILD_SECOND_PASS:This and the next pass are for customer. Used for building MMI with customization enabled this means if a user customizes his phone and builds it in this pass the exe generated will have the customize option enabled. The customization done is linked to the object code with this pass. The customization done is reflected in the exe after this pass only. So on the fly customization requires this pass to be done to implement these passes in the exe.Themes info is added in DCML file only after this pass.3.5 CUSTOMIZATION_BUILD_FINAL_PASS:This is the final pass, after this no more customization is possible. The exe build has customization disabled. This is final customer deliverable with all the customizations done.4 Application CustomizationCustomization tool can be used to customize any application, which was deployed using ADD_APPLICATION macro.The concept of Application customization is very limited and allows only following things to user,• User can deploy or remove the available applications from the phone using the customization tool.• No new application can be introduced.To remove an application, it has to be brought to list of the undeployed applications. When an application is brought in this list all the resources are removed from the application so user can never reach the entry point of such applications so the application seems to be removed from the phone.Details on how to accomplish Application customization have been given in “user manual for customization tool.doc” under Device customization heading.4.1 How to add a new customizable application in MMI1. Define an Id for a new application in PixtelDataTypes.h. For undeployableapplication, Id needs to be defined in enum APPLICATION_DEFAULT andothers should be defined in enum APPLICATION_DEPLOY. The applicationthat is must for MMI functioning is termed as undeployable application.2. Define Resource-id base for application resources in PixtelDataTypes.c. For e.g.13000#definePHONE_SETUP_BASEAs per the current design, application’s resource id range range can be 0-44000,i.e. the highest resource id can be 43999. So all definitions must lie in between 0-44000.3. Any new application should be deployed in MMI using macroADD_APPLICATION(nId,pName,nMinId,nMaxId), wherenId : Application ID.pName: Application NamenMinId: Minimum Application Resource-Id.nMaxId: Maximum possible Application Resource-Id..This macro has to be added in function void PopulateResData(void) defined infile PopulateRes.c for each new application that is being added.For example:ADD_APPLICATION(APP_PHONEBOOK, "PhoneBook",PHONE_BOOK_BASE, PHONE_BOOK_BASE+999);4. Associate a populate function PopulateXXXResData() with this application,which will contain statements to add resources for this application. Call thisfunction in PopulateResData(void) which is present in PopulateRes.c.5. Prototype for function PopulateXXXResData() has to be added in PopulateRes.h.6. Run MMI in First pass and this application will be added in DCML file used forthe customization tool.5 Image CustomizationCustomization tool can be used to change any existing image from any application, which was deployed using ADD_APPLICATION_IMAGE2 macro. Three types of images formats are supported, i.e. only three types of images can be uploaded into phone, which are BMP, GIF and PBM (Pixtel Proprietary).5.1 How to add a new customizable image in an application.1. New image id should be added in the enum IMG_XXX_LIST present in *.def files associated with a particular application. While adding it should be taken care that Id must lie in the resource-id range of that application.2. Images are deployed in MMI using macroADD_APPLICATION_IMAGE2(ImageId,filename,display),whereImageId: Image IDfilename: Path of the image file which has to be associated with the given Image-Id. display: This is the string which should contain the description about this image-id and dislayed for this image in customization tool.For example:ADD_APPLICATION_IMAGE2(IMG_SUBLCD_ABNORMAL_BATTERY,CUST _IMG_PATH"\\\\SUBLCD\\\\Active\\\\SB_charwg.bmp","SubLCD Image Associated with abnormal battery Screen.");This macro has to be called in the function PopulateXXXResData() residing inRes_XXX.c file of that application. During first pass this function will populate this resource in MMI.5.2 Three files are updated while doing image Addition / Modification /Customization:5.2.1 CustImgDataHW.hThis file contains the actual images in arrays of bytes that were populated by customization tool during DEVELOPER_BUILD_FIRST_PASS or CUSTOMIZATION_BUILD_SECOND_PASS.Image names are generated on the basis of the path and name of image.For e.g.“..\\..\\CUSTOMER\\IMAGES\\EMPTYIMAGE.BMP", becomes________CUSTOMER__IMAGES__EMPTYIMAGE_BMP. Names are generated depending upon the actual file name(stored in PC). So in effect a unique string name is generated. Also there has to be independent arrays for images (generated by customization tool) each for a different unique image.Example:const U8 ________CUSTOMER__IMAGES__EMPTYIMAGE_BMP[]={0x00, 0x00, 0x00, 0x00, 0x00, 0x00,};5.2.2 CustImgRes.CThis file contains two tables modified by customization tool during first pass. Customization tool stores the unique name of image in table nCustImageNames[] and path of the image is stored in the table ImageNameList[]. There is one to one correspondence between these two tables.5.2.3 NcustImageNames:This table contains unique name of images for all the different images used by MMI. typedef struct Custom_Image{PU8 pImage; //Customizable Image filenames.}CUSTOM_IMAGE;5.2.4 ImageNameList:This table contains the actual path of the image file (on the PC). It is used on windows by the customization tool to access the imagestypedef struct ImageNameList{S8 filename[MAX_FILENAME_LEN];}IMAGENAME_LIST;5.3 CustImageMap.CThis file contains ImageIdMap and ImageIdSearchMap tables which are modified by customization tool.5.3.1 ImageIdMap:This table contains the mapping of Image ID with the index of the associated image name from the NcustImageNames. In this table Image-Ids are arranged in ascending order. For each image used in MMI there exists an entry in this table. The structure used for this table is:typedef struct Custom_ImageMap{U16 nImageId; //Unique ImageId defined by the developer.U16 nImageNum; //Index of str in Custom_Image.}CUSTOM_IMAGE_MAP;First field (nImageId )denotes the image id (the same ID as used withADD_APPLICATION_IMAGE) and the second field (nImageNum) contains the actual index value of corresponding image ncustImageNames. Here one thing is of importance that there is not a one – to – one correspondence between the field values. It is actually a many - to – one correspondence. So in effect different application may be using different ID’s for accessing a single copy of image stored in image database. And the images that are not present in the image’s path, those entries contain their second field(nImageNum) as 0, denoting that the image is a NULL image.5.3.2 ImageIdSearchMap:This table is a search table used by Pixtel MMI at runtime while loading images on the LCD. Search table makes search procedure faster for Image Id search in ImageIdMap table.The structure used is:typedef struct Custom_ImageMapSearch{U16 minImageId; //Minimum ImageId defined by the developer.U16 maxImageId; //Maximum ImageId defined by the developer.U16 index; //Index of str in NcustImageNames.}CUSTOM_IMAGE_SEARCH_MAP;This table contains the min image id and max image id for which there is contiguous entries in ImageIdMap table. It also contains the index of min Image id in ImageIdMap table.The table is searched for image id to lie in between minImageId and maxImageId, if the image id is found in between these in any entry (i.e. a valid image id) then the minImageId is subtracted from the image id and the residual is added to the index to fetch the actual location of the image-id in ImageIdMap which in turn will tell the location of image array name in NcustImageNames.5.4 How to Modify Images in MMI.5.4.1 Add/Modify by making changes in ADD_APPLICATION_IMAGE2:Make changes directly in corresponding ADD_APPLICATION_IMAGE2 statement and build in First pass and resource will be changed.5.4.2 Using customization tool:User can change Images also by using Customization tool.1. If the image is selected from an existing image list: All the images present inexisting list are already deployed in MMI and there exists corresponding imagename in NcustImageNames. In ImageIdMap table nImageNum value for theimage id is replaced with new image index. These image changes can be seen on the fly by doing a refresh MMI.2. If image is selected using Browse option: The browse option has to create a newimage data structure in the MMI. A new image is added in the CustImgDataHW.h file. If the replaced image is not referred from any other ID then it is removedfrom the MMI. This image can only be seen after the Second pass from the tool. In both the cases mentioned above the ImageIdSearchMap array remains unaffected.5.5 Image Formats supportedPixtel MMI supports the following image formats.• BMP format• GIF format• WBMP format• GIF Format converted to Pixtel Format (.PRP)• BMP format converted to Pixtel Format (.PBM)The image files are added to the MMI by adding a header in front. The header has six bytes and the format of the header is as follows• 1 Byte – Image TypeIt can have the following values:IMAGE_TYPE_INVALIDIMAGE_TYPE_BMP 1IMAGE_TYPE_BMP_SEQUENCE23IMAGE_TYPE_GIF4IMAGE_TYPE_DEVICE_BITMAPIMAGE_TYPE_DEVICE_BITMAP_SEQUENCE 56IMAGE_TYPE_BMP_FILE7IMAGE_TYPE_GIF_FILEIMAGE_TYPE_WBMP_FILE 8 • Byte 2 – Not Used• Byte 3-6- Give the image Size.6 String CustomizationCustomization tool can be used to change any existing string from any application, which was deployed using ADD_APPLICATION_STRING2 macro.6.1 How to add a new customizable String in an application.1. New String id should be added in the enum STR_XXX_LIST present in *.def files associated with a particular application. While adding, it should be taken care that Id must lie in the resource-id range of that application.2. Strings are deployed in MMI using macroADD_APPLICATION_STRING2(stringId,string,display),wherestringId: String IDstring: String which has to be associated with the given String-Id.display: This is the string which should contain the description about this string and dislayed for this string in customization tool.For example:ADD_APPLICATION_STRING2 (STR_HELP_CAPTION, "Help!!" , "Help Screen Caption.");This macro has to be called in the function PopulateXXXResData() residing inRes_XXX.c file of that application. During first pass this function will populate this resource in MMI.6.2 Following tables get updated while doing String Addition/Modification/Customizations:6.2.1 StrRes_XX (Present in CustStrRes.C ):These arrays contain the actual strings in Unicode format. If only one language is supported then only StrRes_1 is created otherwise StrRes_2 and so on are created, one for each language type. The offset of the starting position of string in array is used to reference any string.6.2.2 StrMap_XX (present in CustStrMap.C):This array maps the string ids to actual strings. For each language supported there will be a unique mapping array. For only one language support only StrMap_1 will be generated.In this table, offset of actual string from StrRes_XX are arranged with respect tothe ascending order of existing String-ids.For e.g. Suppose String-Id exists from 1-5 then 1001 to 1010 and then 5004 to 5024 and so on. For these String-ids StrMap_XX will contain entries of the offset ofactual strings associated with ids 1-5 at array index 0-4 then offset of strings for ids 1001 to 1010 at array index 5 to 14 and then offset of strings for ids 5004 to 5024 at array index 15 to 35 and so on.6.2.3 StrMapSearch (Present in CustStrRes.C ):This is an array of following structure:typedef struct Custom_StrMap_Search{U16 nMinStrId; //Minimum StringID defined by the developer.U16 nMaxStrId; //Maximum StringID defined by the developer.U16 nMapIndex; //Index of str in Custom_String_MAP.}CUSTOM_STRMAP_SEARCH;This table contains the min string id and max string id for which there iscontiguous entries in StrMap_XX table. It also contains the index of min string id in StrMap_XX table.The table is searched for string id to lie in between nMinStrId and nMaxStrId,if the string id is found in between these in any entry (i.e. a valid string id) thenthe nMinStrId is subtracted from the string id and the residual is added to thenMapIndex to fetch the index of required string id in StrMap_X (array containing mapping of string id to actual strings for language X). For the index derived forStrMap_X we can get the actual offset of string in StrRes_XX. As the valuestored at StrMap_X [derived index] = the offset of string in StrRes_XX.There is single table for all languages as this table entries don’t change withlanguage.6.2.4 GStringList (Present in CustStrRes.C ):This is an array of following structure:typedef struct StringResourceList{*pStringRes;CUSTOM_STRINGU16 nTotalStrRes;CUSTOM_STRING_MAP *pStringMap;U16 nTotalStrMap;CUSTOM_STRMAP_SEARCH *pStrMapSearch;U16 nTotalStrMapSearch;}StringResList;Each entry corresponds to one language. And its associated StrRes_XX andStrMap_XX.Example:StringResList gStringList[MAX_LANGUAGES]={{(CUSTOM_STRING*)StrRes_1,1846,(CUSTOM_STRING_MAP*)StrMap_1,24 66,(CUSTOM_STRMAP_SEARCH *)StrMapSearch,156},};In previous example: StrRes_1 is the actual strings( in UNICODE format) for that language. And a total of 1846 strings are there in this list. String map for thislanguage is StrMap_1 with total entries of 2466. Where as a common (for alllanguages) Search map StrMapSearch with 156 entries is also stored.With each language support a new StrMap, StrRes is required and it’scorresponding entry is done in this table.6.3 How to Modify Strings in MMI.6.3.1 Add/Modify by making changes in ADD_APPLICATION_STRING2:Make changes directly in corresponding ADD_APPLICATION_STRING2 statement and build in First pass and resource will be changed. But these changes will reset all changes in the resources made from the Customziation tool.6.3.2 Using customization tool:User can also change Strings by using Customization tool.1. If the string is selected from an existing string list: All the strings present inexisting list are already deployed in MMI and their corresponding entry alreadyexist in StrRes_X. In StrMap_X table string offset value for corresponding string Id is replaced with new value of string offset. Only the string map files will bechanged in this case.2. If string is changed to new value: A new string is added in the array of Stringresource table StrRes_X. Update the StrMap_X table with new value of actualstring offset.In both the cases StrMapSearch remains unaffected.7 Menu CustomizationCustomization tool can be used to customize Menus. Check out the User Manual For Customization Tool.doc Release 1.1. For details of how to do menu customization and what all can be customized using customization tool.7.1 How to add a customizable menu in MMI1. New Menu Id should be defined in enum GLOBALMENUITEMSID present inGlobalMenuItems.h.2. Menus are deployed in MMI using macroADD_APPLICATION_MENUITEM(nMenuItemId, nParentId,nNumofMenuItem, nOrderMenuItemId, nHideFlag, nMovable, nDispAttribute, nStrId, nImageId)For example:ADD_APPLICATION_MENUITEM((MAIN_MENU_ORGANIZER_MENUID, IDLE_SCREEN_MENU_ID,4,ORGANIZER_ALARM_MENU,ORGANIZER_CALCULATOR_MENU,ORGANIZER_WORLDCLOCK_MENU,ORGANIZER_APHORISM_MENU,SHOW,MOVEABLEACROSSPARENT,DISP_LIST,MAIN_MENU_ORGANI ZER_TEXT,MAIN_MENU_ORGANIZER_ICON));This macro has to be called in the function PopulateXXXResData() residing inRes_XXX.c file of that application. During first pass this function will populate this resource in MMI.7.2 FollowingTables are updated while doing Menu Addition/ Modification/Customizations:7.2.1 nOrderMenuItem_XXX (Present in CustMenuRes.C ):These arrays contain the Parent child relation for all the menu items. i.e. if a menu has nine children then its array will contain id’s of all the children.Example:U16 nOrderMenuItem_0[]={2,3,12,6,4,11,5,9,7};Here menu 0 contains 9 child menu items with ids 2,3,12,6,4,11,5,9,7 respectively.Here order of children is important, as the menu will be populated accordingly.There fore.U16 nOrderMenuItem_0[]={3,12, 2, 6,4, 9,7,11,5};This shall result in a different menu (same items but placement will be different).So when ever the ordering of child has to be changed the order of this list ischanged by the customization tool.7.2.2 nCustMenus (Present in CustMenuRes.C ):This is an array of following structure:typedef struct Custom_MenuItem{U16 nMenuItemId; //Unique Id for each MenuItem.U16 nParentId; //ItemId of the parent if 0(zero) then no parent.U16 nNumofMenuItem; //Number of Children it has.U16 nHideFlag; //This is a flag to mask/hide.(not sure currently)U16 nMovable; //This is a flag for moving like 0-NotMovable Anywhere,parent..etcsame//1-MovablewithintheU16 nDispAttribute; //This is a display attribute flag like 1-list,2-Circular,3-Tab..etc.U16 nStrId; //Unique StringId of the MenuItem.U16 nImageId; //Unique Image of the MenuItem.U16 *nOrderMenuItemId; //ItemId of the children in Sequence}CUSTOM_MENU;The array is populated by the ADD_APPLICATION_MENUITEM macros in the first pass. It is also generated by the customization tool.Lets take an example:CUSTOM_MENU nCustMenus[MAX_MENU_ITEMS]={{1,0,9,0,0,2,52,38, (U16 *) nOrderMenuItem_0},{,,,}, {,,,}…….};Here {1,0,9,0,0,2,52,38,(U16 *)nOrderMenuItem_0} this part is important for us to understand. If we compare the entries to the above structure, this is what weget:nMenuItemId = 1;nParentId =0; 0(zero) then no parent.nNumofMenuItem = 9; //Number of Children it has.nHideFlag = 0; //This is a flag to mask/hide.nMovable = 0; //This is a flag for moving like 0-NotMovable Anywhere,nDispAttribute =2 ; //This is a display attribute flag ; 2-CircularnStrId = 52; //Unique StringId of the MenuItem.nImageId=38; //Unique Image of the MenuItem.*nOrderMenuItemId = (U16 *)nOrderMenuItem_0;//ItemId of the children in SequenceThe last item in the above structure is the list of children this particular menu item has. Similar entries are generated for each menu item. So in all a tree (of menuitems) has been stored in a structure in a customized way. Also the changes andmovement of items are reflected in these structures.7.3 How to Modify Menus in MMI.7.3.1 Add/Modify by making changes in ADD_APPLICATION_MENUITEM:Make changes directly in corresponding ADD_APPLICATION_MENUITEM statement and build in First pass and resource will be changed.7.3.2 Using customization tool:User can do following menu customizations using Customization Tool.Sequence of Child menu can be changed within the same level.All the child menus those have nMovable flag set as‘MOVEABLEWITHINPARENT’ can be moved within the same level/Parent.Whenever sequence of Menu item is changed, old sequence innOrderMenuItem_XXX is replaced with new sequence.7.3.2.1 Child level menu can be moved from one menu list to another menu list.All the child menus those have nMovable flag set as‘MOVEABLEACROSSPARENT’can be moved from one menu to anothermenu provided that all the child menu items of second menu are set asMOVEABLEACROSSPARENT. Whenever Menu item is moved from onemenu to another, old sequence of both menus in nOrderMenuItem_XXX isreplaced with new sequence.7.3.2.2 Child level menu can be moved from parent menu to Shortcuts.All the child menus those have nMovable flag set as‘MOVEABLETOSHORTCUT’ can be moved from parent menu to shortcutmenu. Whenever Menu item is moved from parent menu to shortcuts, oldsequence of parent menu and shortcut menu in nOrderMenuItem_XXX isreplaced with new sequence.8 Theme Customization8.1 OverviewThe themes section of customization tool is logically divided into two parts viz., Customization of Theme Components and Customization of Themes. The main purpose of customizing the theme is for the following reasons (generally done by the device manufacturer)• To change the "look and feel" of the MMI• To modify an existing theme• To add/create new themesA theme is a specific collection of UI elements that form a part of any screen like• Left Soft Key• Right Soft Key• Multi Tap• Input Box• Scroll Bars• Window Title• List Menus• Matrix Menu• Menu Bar• Shortcut• Drop Down• Formatted Input Box• Main Menu• Circular List Menu• Circular Matrix Menu• 3D Main Menu• General Info• Popup• Inline List• Inline Edit• Pin Input Box• Dialer Input Box• Date Time Input Box• Miscellaneous• Button Text Font• Multi Tap Font• Input Box Font• Window Title Font• List Menu Font• Matrix Menu Font• Menu Bar Index Font• Menu Bar Item Font。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

$GREH 6\ VW HP V
Client Toolstring Overview - CR
Knuckle Joints
Ÿ Placed in toolstring to allow for lateral
movement
Ÿ No movement in ball/seat connection Ÿ Newer styles have lower fishing neck Ÿ Must never be placed below the rope socket
conditions
$GREH 6\ VW HP V
Client Toolstring Overview - CR
What is the toolstring purpose
Ÿ Combination of different components Ÿ Selection due to well conditions and
passes through body to prevent friction
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Toolstring changes due to Well Conditions and Limitations
Ÿ For wells with deviation Ÿ Roller stem – stem with wheels Ÿ Reduces friction against well bore wall Ÿ Shortening of toolstring Ÿ Heavy weight stem, tungsten Ÿ Lead filled stem – gauge surveys only – NO
Toolstring Overview
WCP Slickline
Europe Learning Centre Schlumberger
$GREH 6\ VW HP V
This is HTC – slide 1
Toolstring Components - Objectives
Ÿ What is the toolstring purpose? Ÿ Fishing necks – size and reach Ÿ Sucker rod threads versus Quick connections Ÿ Types of rope sockets available Ÿ Formula for stem selection over THP Ÿ Mechanical jar applications Ÿ Understand toolstring selection due to well limitations and
JARRING
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Centralizers
Ÿ Fluted centralizer – sized to tubing Ÿ Allows for fluid bypass Ÿ Reduced wall contact area Ÿ Can be used to aid access in to devices when
Client Toolstring Overview - CR
Stem
Ÿ Sometimes known as sinker bar Ÿ Fitted below Rope Socket (or Swivel) Ÿ Selection dependant on operation to be
performed
pulling tools i.e. SS/RS or JDS/JUS
Ÿ Larger sized connections have larger SR’s Ÿ Nomenclature i.e. pin, box, thread, etc Ÿ Pipe wrenches used, damage connections,
scissoring of device
Ÿ Long stroke used when jarring up Ÿ Length when open must be recorded
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Mechanical Jars
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Toolstring Safety
Ÿ Never attempt to push wire through rope socket with palm of hand Ÿ Wear safety glasses correctly at all times when working with wire Ÿ One person to make up sucker rod connection, two to break
core or an Otis B core
Ÿ Swivel selection dependant on rope socket type Ÿ Quick connections rope sockets are secured with
either a roll pin or grub (allen) screw, must be installed
limitations
Ÿ Selection due to type of operation to be
performed
Ÿ Weight needed to overcome well pressure Ÿ Mass to deliver the impacts when jarring
– either to shear pins of to free a device
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Fishing Necks – size and reach
Ÿ Sizes – 0.875” through 3.125” Ÿ Angle of fishing neck Ÿ Reach – measured from the top of the device
personnel injuries
Ÿ Pressure lock when out of hole
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Sucker rod threads versus Quick connections
Ÿ Quick connections reduce time between runs Ÿ Stronger, safer and quicker Ÿ Can add length to toolstring if not integral Ÿ No pressure locking of connections Ÿ Pipe wrenches not required to make or break
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Mechanical Jars
Ÿ Device that allows us to shear pins and deliver
impact to free devices
Ÿ Either Link (Spang) or Tubular type Ÿ Two strokes available (20” or 30”) Ÿ Short stroke used when jarring down to prevent
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Swivel
Ÿ Used to allow rotation in the toolstring Ÿ Has roller bearing between lower shaft and
upper houห้องสมุดไป่ตู้ing
to below the fishing neck
$GREH 6\ VW HP V
Client Toolstring Overview - CR
Sucker rod threads versus Quick connections
Ÿ Three well known sucker rod connection sizes Ÿ All latched with S core, both Otis or Camco
connection
Ÿ Allow 3” between pipe wrenches, 60° apart Ÿ If making up connection on ground apply force with hand open Ÿ If standing on connection to break, use glove to help prevent slipping Ÿ Face away from wrench on floor when breaking connection
as a swivel, has no rotation qualities when under load
Ÿ Can be placed anywhere in toolstring, normally
below mechanical jars or below stem
$GREH 6\ VW HP V
joints
Ÿ Longer reach – either J or L core required, some
相关文档
最新文档