Beckhoff#TwinCAT BSD Packages

今回はPackagesマネジメント操作について説明します。TwinCAT/BSDはPCにインストールされたとき基本なSoftwareもRuntimeも入っていますが、アプリケーションにより追加のSoftwareをインストールする場合もあります。

TwinCAT/BSDにそのような追加SoftwareやTwinCAT Functions(たとえばTF6100 OPCUA)をインストール可能です。

TwinCAT/BSDのPackageマネジメントはPackageの検索・インストール・アンインストール・アップデート・ロック機能があります。

Reference Link

TwinCAT/BSDに関連する記事はこちらへ↓

http://soup01.com/ja/category/beckhoff/twincat3/twincat-bsd/

Package Server

BeckhoffのPackage ServerはコンパイルされたSoftwareがおいてあり(Packagesと呼ばわれてます)、それは一番簡単で、素早くTwinCAT/BSDで必要なSoftwareをインストールする方法です。TwinCAT/BSDはそのPackage Serverにアクセスできるようにする必要があります。そのServerでは、TwinCAT/BSDのアップデート・TwinCAT3のUpdate、TwinCAT3のFunctionとFressBSD Repositoryも入っています。

ServerのRepositoryは:

https://tcbsd.beckhoff.com/?dir=TCBSD/12/stable/packages/All

TwinCAT/BSD内の/etc/pkgにその2つのRepositoryが入ってるかを確認してください。

Administrator@Soup01PC:~ $ cd /etc/pkg
Administrator@Soup01PC:/etc/pkg $ ls
FreeBSD.conf    TCBSD.conf

TCBSD.conf

BackhoffのRepositoryです。

Administrator@Soup01PC:/etc/pkg $ cat TCBSD.conf
TCBSD: {
        url: “https://tcbsd.beckhoff.com/TCBSD/12/stable/packages”,
        enabled: true,
        signature_type: “fingerprints”,
        fingerprints: “/usr/share/keys/bhf-pkg”
}

FreeBSD.conf

FreeBSDの公式Repositoryです。Defaultは無効になっています。

Administrator@Soup01PC:/etc/pkg $ cat FreeBSD.conf
# $FreeBSD$
#
# To disable this repository, instead of modifying or removing this file,
# create a /usr/local/etc/pkg/repos/FreeBSD.conf file:
#
#   mkdir -p /usr/local/etc/pkg/repos
#   echo “FreeBSD: { enabled: no }” > /usr/local/etc/pkg/repos/FreeBSD.conf
#

FreeBSD: {
  url: “pkg+http://pkg.FreeBSD.org/${ABI}/quarterly”,
  mirror_type: “srv”,
  signature_type: “fingerprints”,
  fingerprints: “/usr/share/keys/pkg”,
  enabled: yes
}

Check your System

最初はいまRuntimeインストールされているPackagesを調べます。

pkg infoのコマンドを使用します。

実行すると現在インストールされているすべてのPackageが一覧できます。

Administrator@Soup01PC:~ $ pkg info
BapiCmd-1.2                    BapiCmd | CLI for Beckhoff BIOS API
IPC-Diagnostics-1.0.9.25_1     Beckhoff IPC Diagnostics
IPC-Diagnostics-www-2.0.3.25   Beckhoff IPC Diagnostics website
MDP-1.1.0.0_1                  MDP component of TwinCAT System Service
TC31-Driver-3.1.4024.22_532517 Intermediate package to fetch required drivers from TFS drop location
TC31-OrderNo-0.0.0.6           Mapping of TwinCAT order numbers to TC/BSD package names
TC31-TcOsSys-3.1.4024.22_532517 TwinCAT runtime component TcOsSys.dll and TwinCAT license text
————-…

もちろん、指定Packageの情報を詳しく確認することできます。

pkg info <PackageName>のコマンドを使用します。

例え今回 TF6100-OPC-UA-beta-4.0.257を調べるには、

pkg info TF6100-OPC-UA-beta-4.0.257のコマンドになります。

Administrator@Soup01PC:~ $ pkg info TF6100-OPC-UA-beta-4.0.257
TF6100-OPC-UA-beta-4.0.257
Name           : TF6100-OPC-UA-beta
Version        : 4.0.257
Installed on   : Fri May 20 02:37:46 2022 UTC
Origin         : bhf/TF6100-OPC-UA
Architecture   : FreeBSD:12:amd64
Prefix         : /usr/local
Categories     : bhf
Licenses       : SLA4BSP
Maintainer     : info@beckhoff.com
WWW            : https://www.beckhoff.com/tf6100/
Comment        : TF6100 | TC3 OPC UA
Shared Libs required:
        libsasl2.so.3
        libTcAdsDll.so
        libldap_r-2.4.so.2
————-…

Search packages

Packagesをインストールする前まず該当するソフトがServerにあるかどうかを確認することができます。

pkg searchコマンドを使用します。

例えば以下のExampleだと、BeckhoffのServerにOPCUAのPackagesがあるかを確認します。

TF6100-OPC-UA-beta-4.0.249 が戻ってそれはPackage名になります。

pkg search opc-ua
TF6100-OPC-UA-beta-4.0.249     TF6100 | TC3 OPC UA

-R Option

-R Optionsをつけると該当するPackagesの詳しい情報を確認できます。

Administrator@Soup01PC:~ $ pkg search -R opc-ua
name: “TF6100-OPC-UA-beta”
origin: “bhf/TF6100-OPC-UA”
version: “4.0.257”
comment: “TF6100 | TC3 OPC UA”
maintainer: “info@beckhoff.com”
www: “https://www.beckhoff.com/tf6100/”
abi: “FreeBSD:12:amd64”
arch: “freebsd:12:x86:64”
prefix: “/usr/local”
sum: “79621b4fc0f348857b690385a6822a3609a3bf5300df584a4391c928bc283973”
flatsize: 14489741
path: “All/TF6100-OPC-UA-beta-4.0.257.pkg”
repopath: “All/TF6100-OPC-UA-beta-4.0.257.pkg”
licenselogic: “single”
licenses: [
    “SLA4BSP”
]

————-…

Backup Your System!

リスクを減らすため、Pacakgesをインストール・更新する前にまずRestore Pointを作成するのがおすすめです。

Beckhoff#TwinCAT BSD Restore Point
今回はTwinCAT/BSDでRestore Pointを作成したいと思います。それはTwinCAT/BSDがメインシステムが変更されたあ...

Install packages

次はPackagesをインストールします。

doas pkg install コマンドを使用します。OPC-UA Packagesを自分のTwinCAT/BSDにインストールしてみます。

doas pkg install TF6100-OPC-UA-beta-4.0.257

自分が元からそのPackageに入っていますので、更新しますかって聞かれます。

yで同意します。

PackagesがServerからDownloadとしてインストールされています。

これで完成です。

Upgrade packages

Packagesをアップデートするにはそのコマンドを使用します。

もちろん指定Packagesもできますが、コマンドではAllになります。

doas pkg upgrade -n

すべてが自動実行されます。

Lock your packages

TwinCAT/BSD のPackagesはロックをかけることができ、アンインストールやアップデートされないように保護できます。ロックされたPackagesはアップデート・再インストール・アンインストールもできません。

まぁ…ときにUpdateしたらうまくいかないときもありますし、誤って削除されたりとかからの面からみますとかなり優秀な機能です。例えば以下のコマンドはOPCUA Packagesにロックをかけます。

doas pkg lock TF6100-OPC-UA-beta-4.0.257
Password:
TF6100-OPC-UA-beta-4.0.257: lock this package? [y/N]: y
Locking TF6100-OPC-UA-beta-4.0.257

pkg lock -l
Currently locked packages:
TF6100-OPC-UA-beta-4.0.257

Unlock Your packages

ロックがあればもちろんアンロックもあります。例えば以下のコマンドはOPCUA Packagesのロックを解除します。

doas pkg unlock TF6100-OPC-UA-beta-4.0.257
Password:
TF6100-OPC-UA-beta-4.0.257: unlock this package? [y/N]: y
Unlocking TF6100-OPC-UA-beta-4.0.257

pkg lock -l
Currently locked packages:

Delete Your packages

よし、最後はPackagesの削除ですね。以下のコマンドはOPCUA Packagesを削除します。

ですが、OPCUA Packagesがロックされてる状態だとTwinCAT/BSDにロックされてる状態は削除できませんと返します。

doas pkg delete TF6100-OPC-UA-beta-4.0.257
Password:
Checking integrity… done (0 conflicting)
The following package(s) are locked and may not be removed:

        TF6100-OPC-UA-beta

1 packages requested for removal: 1 locked, 0 missing

こちらはLockされてない状態で、Packagesを削除するときのTerminal outputです。

doas pkg delete TF6100-OPC-UA-beta-4.0.257
Password:
Checking integrity… done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        TF6100-OPC-UA-beta: 4.0.257

Number of packages to be removed: 1

The operation will free 14 MiB.

Test

TwinCAT/BSD内にOPCUA Packagesをインストールしましたので、テストしてみましょう。

UaExpertを起動し、Add Serverします。

Custom Discoveryの+ボタンをクリックします。

TwinCAT/BSDのIPを入力>OKします。

しばらく立ちますと、TwinCAT/BSDのOPCUA Serverが見えますね。

Noneを選び>OK。

Serverが追加されました。

そのServer選び>Connectします。

AccpetのCheckbox入れ、Continueします。

TwinCAT/BSDのOPCUA Serverと接続に成功しました。

Packageのマネジメントと実証はここまでですが、次回はWrite filterについて説明しますね。よろしくお願いします。

Footer_Basic

Please Support some devices for my blog

Amazon Gift List

Find ME

Twitter:@3threes2
Email:soup01threes*gmail.com (* to @)
YoutubeChannel:https://www.youtube.com/channel/UCQ3CHGAIXZAbeOC_9mjQiWQ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする