focas

package
v1.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 4, 2025 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Connect

func Connect(ip string, port uint16, timeoutMs int32) (uint16, error)

Connect подключается к станку и возвращает хендл

func Disconnect

func Disconnect(handle uint16)

Disconnect освобождает хендл подключения

func GetModelImplementations added in v1.0.2

func GetModelImplementations(series string) (model.Interpreter, model.ProgramReader)

GetModelImplementations выбирает подходящие интерпретатор и ридер программ на основе строки серии ЧПУ.

func Startup

func Startup(mode uint16, logPath string) error

Startup инициализирует процесс FOCAS2

Types

type FocasAdapter added in v1.0.1

type FocasAdapter struct {
	// contains filtered or unexported fields
}

FocasAdapter инкапсулирует логику подключения и вызовов к FOCAS API. Он также управляет автоматическим переподключением и содержит реализации для конкретной модели станка.

func NewFocasAdapter added in v1.0.1

func NewFocasAdapter(ip string, port uint16, timeoutMs int32, modelSeries string) (*FocasAdapter, error)

NewFocasAdapter создает новый экземпляр FocasAdapter и устанавливает соединение.

func (*FocasAdapter) AggregateAllData added in v1.0.3

func (a *FocasAdapter) AggregateAllData() (*models.AggregatedData, error)

AggregateAllData собирает все доступные данные со станка последовательно.

func (*FocasAdapter) CallWithReconnect added in v1.0.2

func (a *FocasAdapter) CallWithReconnect(f func(handle uint16) (int16, error)) error

CallWithReconnect — это обертка для выполнения вызовов с возможностью переподключения.

func (*FocasAdapter) Close added in v1.0.1

func (a *FocasAdapter) Close()

Close закрывает соединение.

func (*FocasAdapter) GetControlProgram added in v1.0.1

func (a *FocasAdapter) GetControlProgram() (string, error)

GetControlProgram считывает G-код программы, используя реализацию для конкретной модели.

func (*FocasAdapter) GetSystemInfo added in v1.0.1

func (a *FocasAdapter) GetSystemInfo() *models.SystemInfo

GetSystemInfo возвращает системную информацию о станке.

func (*FocasAdapter) ReadAlarms added in v1.0.3

func (a *FocasAdapter) ReadAlarms() ([]models.AlarmDetail, error)

ReadAlarms считывает все активные сообщения об ошибках со станка.

func (*FocasAdapter) ReadAxisData added in v1.0.1

func (a *FocasAdapter) ReadAxisData() ([]models.AxisInfo, error)

ReadAxisData считывает имена, абсолютные позиции и диагностику для всех управляемых осей

func (*FocasAdapter) ReadContourFeedRate added in v1.0.3

func (a *FocasAdapter) ReadContourFeedRate() (int32, error)

ReadContourFeedRate считывает фактическую скорость подачи по контуру (F). Эта функция вызывает cnc_actf.

func (*FocasAdapter) ReadDiagnosisByte added in v1.0.1

func (a *FocasAdapter) ReadDiagnosisByte(diagNo int16, axisNo int16) (int32, error)

ReadDiagnosisByte считывает 1-байтовое диагностическое значение.

func (*FocasAdapter) ReadDiagnosisDoubleWord added in v1.0.1

func (a *FocasAdapter) ReadDiagnosisDoubleWord(diagNo int16, axisNo int16) (int64, error)

ReadDiagnosisDoubleWord считывает 4-байтовое диагностическое значение.

func (*FocasAdapter) ReadDiagnosisReal added in v1.0.1

func (a *FocasAdapter) ReadDiagnosisReal(diagNo int16, axisNo int16) (float64, error)

ReadDiagnosisReal считывает 8-байтовое диагностическое значение с плавающей запятой.

func (*FocasAdapter) ReadDiagnosisWord added in v1.0.1

func (a *FocasAdapter) ReadDiagnosisWord(diagNo int16, axisNo int16) (int32, error)

ReadDiagnosisWord считывает 2-байтовое диагностическое значение.

func (*FocasAdapter) ReadFeedData added in v1.0.3

func (a *FocasAdapter) ReadFeedData() (*models.FeedInfo, error)

ReadFeedData считывает фактическую скорость подачи и процент коррекции. Реализация основана на C# коде, считывающем данные с помощью cnc_rdspeed и cnc_rdparam.

func (*FocasAdapter) ReadMachineState added in v1.0.1

func (a *FocasAdapter) ReadMachineState() (*models.UnifiedMachineData, error)

ReadMachineState считывает и интерпретирует состояние станка, используя реализацию для конкретной модели.

func (*FocasAdapter) ReadProgram added in v1.0.1

func (a *FocasAdapter) ReadProgram() (*models.ProgramInfo, error)

ReadProgram считывает информацию о текущей выполняемой программе и текущую строку G-кода. Этот метод является частью интерфейса model.FocasCaller.

func (*FocasAdapter) ReadSpindleData added in v1.0.1

func (a *FocasAdapter) ReadSpindleData() ([]models.SpindleInfo, error)

ReadSpindleData считывает информацию о скорости, нагрузке и коррекции для всех активных шпинделей.

func (*FocasAdapter) ReadSystemInfo added in v1.0.3

func (a *FocasAdapter) ReadSystemInfo() (*models.SystemInfo, error)

ReadSystemInfo считывает и возвращает системную информацию о станке.

func (*FocasAdapter) Reconnect added in v1.0.3

func (a *FocasAdapter) Reconnect() error

Reconnect пытается восстановить соединение.

func (*FocasAdapter) StartPolling added in v1.0.3

func (a *FocasAdapter) StartPolling(ctx context.Context, interval time.Duration) <-chan PollingResult

StartPolling запускает фоновый процесс, который периодически вызывает AggregateAllData. Он обрабатывает одновременные запросы, если сбор данных занимает больше времени, чем интервал. Опрос прекращается при отмене предоставленного контекста.

type PollingResult added in v1.0.3

type PollingResult struct {
	Data *models.AggregatedData
	Err  error
}

PollingResult содержит данные или ошибку от одной попытки опроса.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL