VPL-FX51 - Protocol

VPL-FX51 - Protocol

PROTOCOL MANUAL

VPL-FX51

WORLD

DATA PROJECTOR

! WARNING

This manual is intended for qualified service personnel only.

To reduce the risk of electric shock, fire or injury, do not perform any servicing other than that contained in the operating instructions unless you are qualified to do so. Refer all servicing to qualified service personnel.

! WARNUNG

Die Anleitung ist nur für qualifiziertes Fachpersonal bestimmt.

Alle Wartungsarbeiten dürfen nur von qualifiziertem Fachpersonal ausgeführt werden. Um die

Gefahr eines elektrischen Schlages, Feuergefahr und Verletzungen zu vermeiden, sind bei

Wartungsarbeiten strikt die Angaben in der Anleitung zu befolgen. Andere als die angegeben

Wartungsarbeiten dürfen nur von Personen ausgeführt werden, die eine spezielle Befähigung dazu besitzen.

! AVERTISSEMENT

Ce manual est destiné uniquement aux personnes compétentes en charge de l’entretien. Afin de réduire les risques de décharge électrique, d’incendie ou de blessure n’effectuer que les réparations indiquées dans le mode d’emploi à moins d’être qualifié pour en effectuer d’autres.

Pour toute réparation faire appel à une personne compétente uniquement.

VPL-FX51

VPL-FX51

Table of Contents

1. Introduction

..............................................................................................

1

2. RC-232C

2-1.

Communication Specifications ...................................................................... 1

2-2.

Command Block Format ................................................................................ 2

2-3.

Block Format .................................................................................................. 3

2-4.

Connection ..................................................................................................... 4

2-5.

Communication Procedure ............................................................................. 4

2-5-1.

Outline of Communication ............................................................ 4

2-6.

Communication Rules .................................................................................... 5

2-7.

Approximate Return Waiting Times .............................................................. 5

3. NETWORK

3-1.

Introduction .................................................................................................... 6

3-1-1.

Features of Version 2 .................................................................... 6

3-2.

Packet Structure ............................................................................................. 6

3-2-1.

Header ........................................................................................... 7

3-2-2.

Community .................................................................................... 7

3-2-3.

Command ...................................................................................... 8

3-2-3-1. Request ......................................................................... 8

3-2-3-2. Response ...................................................................... 8

3-2-4.

Broadcast Support ......................................................................... 9

3-2-5.

Multi-cast Support ......................................................................... 9

3-3.

Request/Response .......................................................................................... 9

3-3-1.

Request .......................................................................................... 9

3-3-2.

Response ....................................................................................... 9

3-3-3.

SET Request ................................................................................ 10

3-3-4.

Get Request ................................................................................. 10

3-3-5.

ERROR Response ....................................................................... 10

3-4.

Items ............................................................................................................. 11

3-4-1.

Model Dependent Category ........................................................ 11

3-4-2.

80**h ............................................................................................ 11

3-4-3.

90**h ............................................................................................ 12

3-5.

Error Code .................................................................................................... 13

3-5-1.

Item Error .................................................................................... 14

3-5-2.

Community Error ........................................................................ 14

3-5-3.

Request Error .............................................................................. 15

3-5-4.

Network Error ............................................................................. 15

3-5-5.

Comm Error ................................................................................ 16

3-5-6.

NVRAM Error ............................................................................ 16

1

3-6.

Service Application Specifications .............................................................. 17

3-6-1.

Advertisement Service ................................................................ 17

3-6-1-1. Specifications ............................................................. 17

3-6-1-2. Function ...................................................................... 17

3-6-1-3. Setup Items ................................................................. 18

3-6-2.

Remote Control Service .............................................................. 18

3-6-2-1. Specifications ............................................................. 18

3-6-2-2. Function ...................................................................... 18

3-6-2-3. Processing Method ..................................................... 19

3-6-2-4. Setup Items ................................................................. 19

4. Appendix

..................................................................................................

20

2

VPL-FX51

1. Introduction

This protocol manual describes the basic configuration and basic operations of various commands used for projector. Projector can be controlled using the commands in the List of Commands provided in

Section 4 “Appendix”. Using an external CONTROLLER , etc., inputs can be switched and the power can also be turned on and off. In the following paragraphs, “CONTROLLER” means an external device such as a PC which controls projector using these commands.

2. RS-232C

2-1. Communication Specifications

<RS-232C Communication Signal>

. Full duplex communication channels (Flow control not performed.)

. Start-stop synchronism system

. Baud rate: 38.4 kbps (bits per second)

. The bit configuration is defined as follows.

1 START Bit + 8 DATA Bits + 1 PARITY Bit + 1 STOP Bit

START

BIT

D0

(LSB)

D1 D2 D3 D4 D5 D6 D7

(MSB)

PARITY STOP

(EVEN) BIT

EVEN Parity.....Total number of “1”s from D0 to D7 is an even number.

VPL-FX51

1

B0

B1

B2

B3

B4

B5

B6

B7

2-2. Command Block Format

The code from B0 to B7 as described below are transmitted.

Transmission from the Master side

ITEM NUMBER

SET / GET

DATA

Transmission from the Master side

START CODE : 0 x A9

ACK / NAK

ACK

DUMMY DATA

CHECK SUM

END CODE : 0 x 9A

B0 START CORD

Common in the all FORMAT

B6 CHECK SUM

B1 to B5 are calculated by OR;

<Example of Calculation>

0 x A9

0 x A9

Answer

1010

1010

1010

1001

1001

1001

0 x A9

B7 END CODE

Common in the all FORMAT

0 x A9

0 x 9A

Answer

1010

1001

1011

Reception in the Master side

(With Data)

1001

1010

1011

0 x BB

ITEM NUMBER

REPLY

DATA

2

VPL-FX51

2-3. Block Format

B0

B1

B2

B3

B4

B5

B6

B7

B0

B1

B2

B3

B4

B5

B6

B7

Transmission from the Master side

START CODE

ITEM NUMBER

SET / GET

DATA

CHECK SUM

END CODE

Reception in the Master side

START CODE

ACK / NAK

ACK

DUMMY DATA

CHECK SUM

END CODE

Data transmission to the Projector

Start of Command

Set the Data Category Value desired.

Refer to the Table 1 for details.

SET: 0 x 00 (Set data)

GET: 0 x 01 (Get data)

SET: Data to be set (Refer to the Table 2)

GET: Unused. Set Dummy data [0 x 00, 0 x 00]

Check Sum

End of Command

Receive results of the data transmission from the Projector.

Start of Command

Results correspond with the data transmission

Refer to the Table 3 for the data in detail.

[0 x 03]

Express Reply data either of ACK, or NAK

This data does not mean any senses.

Dummy Data [0 x 00, 0 x 00] is stored.

Check Sum

End of Command

B0

B1

B2

B3

B4

B5

B6

B7

Reception in the Master side (With Data)

START CODE

ITEM NUMBER

REPLY

DATA

CHECK SUM

END CODE

Receive data from the Projector

Start of Command

Received data

Refer to the Table 1 in detail.

[0 x 02]

Express data to be Reply data

Received data

Refer to the Table 2 in detail.

Check Sum

End of Command

VPL-FX51

3

2-4. Connection

<RS-232C Connection>

Communication is enabled by the use of a D-Sub 9 Pin cross (reverse) cable.

The pin assignment of D-Sub 9 Pin and D-Sub 25 Pin is as follows.

D-Sub 9 Pin

Shell = FG

3

2

6

5

7

8

1

4

9

D-Sub 25 Pin

1

2

3

6

7

4

5

8

20

22

FG

TxD

RxD

RTS

CTS

DSR

SG

DCD

DTR

RI

Name

Grounding for safety protection or cable shield

Transmission data

Reception data

Transmission request

Transmission permission

Data set ready

GND for signal

Data channel signal carrier detection

Data terminal ready

Calling display (Presence/absence of calling signal)

Pins indicated as D-Sub 25 Pin are not used.

Assured cable length: 15 m (However, assurance may not be applicable for some cables.)

The software for controlling the projector from a PC is intended for performing transmission and reception for only the TxD and RxD lines.

Therefore there is no handshake normally performed by RS-232C.

2-5. Communication Procedure

2-5-1. Outline of Communication

All communication between CONTROLLER (PC, etc.) and DEVICE (PROJECTOR) is performed by the command block format. Communication is started by the issue of a command at CONTROLLER and ended when the return data is sent to CONTROLLER after DEVICE receives the command.

CONTROLLER is prohibited from sending several commands at one time. This means that after CON-

TROLLER sends one command, it cannot send other commands until DEVICE returns the return data.

DEVICE sends the return data after processing the command. The time from when CONTROLLER sends the command until the return data is returned differs according to the contents of the command.

In some cases, CONTROLLER may receive data from DEVICE even though it has not sent a command.

(For example, during SYS setting, SIRCS command, and switcher information when switcher is selected.) n

When Sircs Direct Command is sent, return data may not be returned in some cases.

4

VPL-FX51

2-6. Communication Rules

. When sending a command from CONTROLLER, the return data from PROJECTOR should be received first before sending the next command. Even if the next command is sent before receiving the return data, since PROJECTOR will not be able to receive that command, it does not return a response to CONTROLLER. Consequently, no error code is also sent.

The following lists the approximate waiting times for PROJECTOR to return the return data after

CONTROLLER sends the command.

. When a communication error occurs, PROJECTOR ignores the data received until now, and set into the reception standby state.

. For undefined commands or commends determined as invalid by PROJECTOR, PROJECTOR will send the “NAK” return data to CONTROLLER .

. Take note that when data is written when the input signal of PROJECTOR is unstable, that data (value) will not be incorporated.

. When INDEX specified SIRCS direct command is transmitted, leave an interval of 45 msec until the next transmission. (Do not return the return data (ACK, NAK) when the SIRCS direct command is received.)

2-7. Approximate Return Waiting Times

The await-return time is approx. 30 msec.

n

This is the case, unless the communications are interfered anyway.

VPL-FX51

5

3.

NETWORK

3-1. Introduction

This protocol manual describes version 2 of the Simple Display Control Protocol which is used to control the professional-use display via a network. Version 1 used the same format as that of the RS-232C/-485 protocol for projectors. The new protocol has been developed because the version 1 protocol using RS-

232C/-485, which assumes a one-to-one connection with a PC, could not make full use of the advantages of networks in order to simultaneously control multiple display equipment.

3-1-1. Features of Version 2

Community

When simultaneously controlling multiple displays, a wrong IP address could be used, and it is not possible to prevent illegal access from other PCs. The community can be set in the same way as SNMP to prevent such mis-operations and illegal access.

Information

In version 1, basic information about the equipment such as equipment name and serial number cannot be obtained. In version 2, such equipment information can be obtained.

3-2. Packet Structure

This section describes the packet structure of version 2.

Header

(2)

Community

(4)

Command

(4)

Data (n)

Fig. 1 Packet structure

6

VPL-FX51

3-2-1. Header

The header consists of Version (8 bits) and Category (8 bits).

0 1

1

2 3 4 5 6 7

Version (8)

0 1

2

2 3 4 5 6 7

Category (8)

(Bit position)

Fig. 2 Header structure

Version

This indicates the version number of protocol.

It is fixed to 02h (version 2).

Category

The category number of the display equipment to be controlled is entered here. The display equipment side checks the category number, and if a different category number is entered, the request is ignored.

3-2-2. Community

When the community data matches the community that is set in the display equipment, the request is executed. Community consists of four alphanumeric characters (case sensitive). All display equipment has the default value “SONY” when shipped from the factory.

0 1

1

2 3 4 5 6 7 0 1 2 3

2

4 5 6 7 0 1

Community (32)

3

2 3 4 5 6 7 0 1

4

2 3 4 5 6 7

(Bit position) n

Community should be entered with four characters. Three characters or less are not accepted.

VPL-FX51

7

3-2-3. Command

This section describes the format of the request command and the response command.

0 1 2 3

1

4 5 6

Request/Response (8)

7 0 1 2 3

2

4 5 6 7 0 1

Item No (16)

3

2 3 4 5 6 7 0 1

4

2 3 4 5 6 7

(Bit position)

Data Length (8)

3-2-3-1. Request

This section describes the format of the request command which is used to issue requests from the host

PC to the display.

Community

This is the same alphanumeric characters as those of community that is set in the display-sending request.

Request

This is the request for display.

Item No.

This is the item number of the request target.

Data Length

This is the length of the data accompanying the request. The maximum length is 128 bytes. If there is no data, it is 0.

Data

This is the data accompanying the request.

3-2-3-2. Response

This section describes the format of the response command which is used to return a response to the host

PC from the display.

Community

The same alphanumeric characters as those of the request is entered.

Response

The result of the request is entered.

Item No.

The same value as those of the request is entered.

Data Length

This is the length of the data accompanying the response. The maximum length is 128 bytes. If there is no data, it is 0.

Data

This is the data accompanying the response.

8

VPL-FX51

3-2-4. Broadcast Support

Broadcasting is not supported.

3-2-5. Multi-cast Support

Multi-casting is not supported.

3-3. Request/Response

This section describes the requests and responses.

3-3-1. Request

There are only two types of request. One is the GET request to acquire the display information and status.

The other is the SET request to modify the display setup.

Request Contents

SET (00h) Used to control turning the power on/off and to control the input selector, and to change the various setups.

SET (01h) Used to acquire the installation information, equipment status and various setup values.

3-3-2. Response

The response returns the result of executing the request from the host PC.

Response Contents

NG (00h)

OK (01h)

Indicates that the request is illegal or cannot be executed.

Indicates that the request was executed correctly.

VPL-FX51

9

3-3-3. SET Request

The SET request is used to set a new value in the specified item. Details of the request and the response are described below.

Request

Request

00h

Item No.

Item No.

Data

Length n

Data

Set Data (n byte)

Response

OK (01h) Item No.

0

3-3-4. Get Request

The GET request is used to acquire the value of the specified item. Details of the request and the response are described below.

Request

Request

01h

Item No.

Item No.

Data

Length

0

Response

OK (01h) Item No.

n Get Data (n byte)

3-3-5. ERROR Response

When an error occurs in the contents of a request or in the result of execution, NG is returned as the response.

NG (00h) Item No.

2 Error Code (16)

10

VPL-FX51

3-4. Items

In addition to the items that are supported by version 1, item (80**h) that enables information about new equipment to be acquired is added.

Category

00**h

01**h

03**h

17**h

19**h

80**h

90**h

Contents

Used to control and to change the various setups.

Used to acquire the status.

Used to reset memory.

Sircs (15 bit category)

Sircs (20 bit category)

Used to acquire equipment information.

Used to acquire network setup information.

SET

O

O

O

O

GET

O

O

O

O

3-4-1. Model Dependent Category

The supported contents of 00**h, 01**h, 03**h, 17**h and 19**h change depending on the model.

Details are shown on the 4. Appendix.

3-4-2. 80**h

Used to acquire the equipment information.

Lower byte

00h

01h

02h

03h

Contents

Category Code

Model name

Serial number

Installation location

0x8000 Category code

1 byte

0x8001 Model name

Alphanumeric 12 characters

If the number of characters is less than 12, the remaining digits are filled with 00h.

0x8002 Serial number

4 bytes n

The serial number is in the range of 00000000 to 99999999.

0x8003 Installation location

Alphanumeric 24 characters

If the number of characters is less than 24, the remaining digits are filled with 00h.

SET

O

GET

O

O

O

O

VPL-FX51

11

3-4-3. 90**h

Used to acquire the network setup information.

Lower bytes

00h

01h

02h

03h

04h

Contents

MAC Address

IP Address

Subnet Mask

Default Gateway

DHCP

0x9000 Mac Address

6 bytes

0x9001 IP Address

4 bytes

0x9002 Subnet Mask

4 bytes

0x9003 Default Mask

4 bytes

0x9004 DHCP

1 byte

DHCP invalid DATA Value: 0

DHCP valid DATA Value: 1

SET GET

O

O

O

O

O

12

VPL-FX51

3-5. Error Code

The error code list is shown below with a detailed description of each.

Category

Item Error (01**h)

Community Error (02**h)

Request Error (10**h)

Network Error (20**h)

Comm Error (F0**h)

NVRAM Error (F1**h)

Error

Invalid Item

Invalid Item Request

Invalid Length

Invalid Data

Short Data

Not Applicable Item

Different Community

Invalid Version

Invalid Category

Invalid Request

Short Header

Short Community

Short Command

Timeout

Timeout

Check Sum Error

Framing Error

Parity Error

Over Run Error

Other Comm Error

Unknown Response

Read Error

Write Error

Error Code

13h

01h

01h

10h

20h

30h

40h

50h

F0h

10h

20h

01h

02h

03h

04h

11h

80h

01h

01h

02h

03h

11h

12h

VPL-FX51

13

3-5-1. Item Error

This error occurs when the Item No. of a request is illegal or its Data is illegal. The conditions for occurrence of the respective errors are shown below.

Invalid Item

An unsupported Item No. is specified.

Example 1: The unsupported category 0xA** is specified.

Example 2: The unsupported Item No. 0x8010 is specified.

Invalid Item Request

The Item No. is supported but an unsupported Request is issued.

Example: An attempt is made to set data in the Model Name (0x8001).

Invalid Length

Data Length of the specified Item No. is too long.

Example: An attempt is made to set 25 byte data in the installation location (0x8003).

Invalid Data

Data of the specified Item No. is outside the setting range.

Example: An attempt is made to set 101 in the Item when the setting range of the Item is 1 to 100.

Short Data

The length of data is shorter than the value specified by the Data Length.

Example: The actual data length is 9 bytes but Data Length is 10.

Not Applicable Item

An item that is not valid at present is specified.

Example: The item to switch the display is specified when the main power is off.

3-5-2. Community Error

This error occurs when community is different.

Example: “ABCD” is specified when “SONY” is set.

14

VPL-FX51

3-5-3. Request Error

This error occurs when Header or Command is illegal. The conditions of occurrence of the respective errors are shown below.

Invalid Version

The version of the Header is other than 2.

n

When another version is supported, an error occurs in all versions other than the supported version.

Invalid Category

The category does not match.

Example: 0x0B is specified in the device of Category = 0x0A.

Invalid Request

An unsupported request is specified.

Example: Request = 0x02 is specified.

Short Header

The received data is 1 byte.

Short Community

The received data is in the range of 2 to 5 bytes.

Short Command

The received data is in the range of 6 to 9 bytes.

3-5-4. Network Error

This is an error that occurs in TCP/IP. The conditions of occurrence of the respective errors are shown below.

Timeout

Communication was interrupted.

VPL-FX51

15

3-5-5. Comm Error

This is an error in communication with the main control microprocessor of the display.

Timeout

Reception data is not returned after data is sent.

Check Sum Error

A check sum error occurred in the main control microprocessor of the display.

Framing Error

A framing error occurred.

Parity Error

A parity error occurred.

Over Run Error

An overrun error occurred.

Other Comm Error

Another error occurred.

Unknown Response

The data cannot be processed was received.

3-5-6. NVRAM Error

Read Error

Reading from NVRAM was failed.

Write Error

Writing to NVRAM was failed.

16

VPL-FX51

3-6. Service Application Specifications

This section describes the specifications, performance and operation of the service application provided for end-users.

3-6-1. Advertisement Service

The advertisement service is provided to facilitate development of a PC application that can automatically detect a projector on the network. This function is achieved by broadcasting the equipment information periodically to the network.

3-6-1-1. Specifications

The SDAP protocol is defined in order to provide this service.

Protocol

Item

Protocol name

Transport

Port number

BC interval

Description

SDAP (Simple Display Advertisement Protocol)

UDP

53862

Once every 30 seconds (initial value)

3-6-1-2. Function

The equipment information shown below is transmitted as the broadcast packet periodically (at certain intervals).

Information

Category

Equipment name

Serial number

Installation information

Community

Power status

Description

Category of the equipment

Name of the equipment

Serial number of the equipment

Installation location of the equipment

Community name of the equipment

Power status of the equipment m

. The category of projector is 0x0a.

. The power status is acquired from the main microprocessor immediately before broadcast.

. In the power status, the return data from the main microprocessor is set as is. If a communication error occurs, ffffh is set.

VPL-FX51

17

3-6-1-3. Setup Items

The items that can be set for the advertisement service are described below.

Setup items

Port

Interval

Description

Port number

Broadcast interval

3-6-2. Remote Control Service

The SDCP protocol, which is required for remote control of equipment via a network, is provided. This machine is equipped with SDCP that enables basic information such as equipment name and serial numbers to be acquired.

3-6-2-1. Specifications

Protocol

Item

Protocol name

Transport

Port number

TCP connection timeout

Description

SDCP (Simple Display Control Protocol)

TCP

53495

30 seconds

3-6-2-2. Function

This responds to the control command and requests for acquiring the status and information supplied from clients.

Control request

Enables the input to be selected and picture control to be adjusted.

SIRCS request

Enables remote control by sending the SIRCS code.

Status request

Enables equipment status information such as power status, error information and power-on time to be acquired.

Information request

Enables equipment information such as equipment name, serial number and installation information to be acquired.

18

VPL-FX51

3-6-2-3. Processing Method

Client requests can be classified into two categories: requests that can be processed by the network block only, and requests that need to be processed upon completion of communication with the main microprocessor of the equipment. The processing method of each category is described below.

Network block

Performs processing of the information request.

n

Part of the information that the network block possesses belongs to the information request item.

Main Microprocessor

Performs processing of the control request, SIRCS request and status request. Because serial communication with the main microprocessor and SDCP use different protocols, format conversion of the protocol is required.

3-6-2-4. Setup Items

The items that can be set for the remote control service are described below.

Setup item

Port

Timeout

Description

Port number

TCP connection timeout time

VPL-FX51

19

4. Appendix

Iteme

INPUT

CONTRAST

BRIGHTNESS

COLOR

HUE

SHARPNESS

RGB ENHANCER

VOLUME

COL TEMP

DDE

ASPECT

SCAN CONV

PICTURE MUTING

INPUT A

LAMP MODE

GAIN RED

GAIN GREEN

GAIN BLUE

BIAS RED

BIAS GREEN

BIAS BLUE

< Table 1>

Item Number

Upper byte

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

00h

STATUS ERROR 01h

20

Iteme

STATUS POWER

CONTROL MODE SEL

LAMP TIMER

ROM VERSION

SC ROM VERSION

Channel Memory Reset

Status Memory Reset

Set Memory Reset

W/B All Save

W/B Low Save

W/B High Save

Sircs (15bit category)

Sircs (20bit category)

< Table 1>

Item Number

Upper byte

01h

01h

01h

01h

01h

03h

17h

19h

13h

1Dh

1Eh

01h

02h

03h

04h

05h

06h

Lower byte

02h

05h

Data

STANBY

START UP

STARTUP LAMP

POWER ON

COOLING1

COOLING2

SAVING COOLING1

SAVING COOLING2

SAVING STABY

USER

SERVICE

USE TIME

ROM VER

SC VER

<Table 2>

Data

Upper byte

05h

06h

07h

08h

00h

01h

02h

03h

04h

00h

01h

00h-ffffh

Lower byte

Remarks

Set only

0000h

Set only

(Subject to

0000h

the command only)

ACK

NAK

Item

< Table 3>

Item Number

Upper byte

00h

Undefined Command

Size Error

Select Error

Range Over

Not Applicable

Check Sum Error

Framing Error

Parity Error

Over Rub Error

Other Comm Error

01h

F0h

Lower byte

00h

01h

04h

05h

06h

0Ah

10h

20h

30h

40h

50h

VPL-FX51

21

22

VPL-FX51

VPL-FX51

23

The material contained in this manual consists of information that is the property of Sony Corporation.

Sony Corporation expressly prohibits the duplication of any portion of this manual or the use thereof for any purpose other than the operation or maintenance of the equipment described in this manual without the express written permission of Sony Corporation.

Le matériel contenu dans ce manuel consiste en informations qui sont la propriété de Sony Corporation.

Sony Corporation interdit formellement la copie de quelque partie que ce soit de ce manuel ou son emploi pour tout autre but que des opérations ou entretiens de l’équipement à moins d’une permission écrite de Sony

Corporation.

Das in dieser Anleitung enthaltene Material besteht aus

Informationen, die Eigentum der Sony Corporation sind.

Die Sony Corporation untersagt ausdrücklich die

Vervielfältigung jeglicher Teile dieser Anleitung oder den

Gebrauch derselben für irgendeinen anderen Zweck als die Bedienung oder Wartung der in dieser Anleitung beschriebenen Ausrüstung ohne ausdrückliche schriftliche Erlaubnis der Sony Corporation.

VPL-FX51

9-870-346-61

Sony Corporation

B&P Company

English

02IS16-1

Printed in Japan

©2002.9

Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project