Part Feedingログファイル

概要

Part Feedingログファイルは、動作プロセスで行われる以下動作の、動作時間と結果を記録したログファイルです。

  • ビジョン処理
  • フィーダー動作
  • コールバック関数動作 (Robot, Status)

Part Feedingログファイルには、次の用途があります。

  • パーツをピックするサイクルタイムを調べる。
  • ホッパー投入数調整のために、1回あたりのピック可能パーツ数を調べる。
  • 各動作の処理時間をもとに、時間のかかっている動作を調べ、改善する。

この機能を利用するには、コントローラーにPCが接続されていることが必要です。

ログ機能の有効化

PCをコントローラーに接続します。PF_Startの前に、PF_InitLogを実行するように記述します。
詳細は、以下を参照してください。
PF_InitLog

ログファイルの書式

共通事項

ファイルはCSV形式です。ファイル名はPF_InitLogの引数で指定します。
1つのログファイルに、以下のデータが時系列に記録されます。"データ"フィールドは、ログタイプによって異なります。その他のフィールドは、すべて共通です。

列名 内容
1 DateTime 文字列 動作開始時刻 (yyyy/mm/dd hh:MM:ss)
2 Tick 実数 PF_Start開始からの経過時間 [秒] (s.sss)
3 Time 実数 処理時間[秒] (s.sss)
4 Type 文字列 動作種類
5 ID 整数 パーツ ID
6 Data1 データの種類 (Type)により異なります。
7 Data2
8 Data3
9 PartName 文字列 パーツ名
10 RobotNo 整数 パーツに割り当てられたロボット番号
11 FeederNo 整数 パーツに割り当てられたフィーダー番号
12 Project 文字列 Epson RC+ プロジェクト名

DateTimeの時刻および Tick, Timeの時間の関係は、下図のとおりです。

ビジョンシーケンス動作ログ

Part Feedingプロセスが、[パーツビジョンシーケンス]で指定されたビジョンシーケンスを処理するのに必要とした時間と、検出した表パーツ、裏パーツの数のログです。
詳細は以下を参照してください。
ビジョン

列名 内容
4 Type 文字列 ログ種類 (“UserVision”)
5 ID 整数 パーツID
6 NumFront 整数 検出した表パーツ数
7 NumBack 整数 検出した裏パーツ数

システムビジョンシーケンス動作ログ

Part Feedingプロセスが、パーツの分布などを検出するために内部的に生成したビジョンシーケンスを処理するのに要した時間のログです。

列名 内容
4 Type 文字列 ログ種類 (“SystemVision”)
5 ID 整数 パーツID

振動ログ

このログには、システムまたはユーザーによって実行されたフィーダー振動動作のタイプが記録されます。

列名 内容
4 Type 文字列 動作種類:
Separation セパレーション
Centering センタリング
Shift シフト
BackShift バックシフト
Flip フリップ
CenterByShift シフトによるセンタリング
Purge パージ
QtyAdjHopperTime QtyAdjHopperTime
5 ID 整数 パーツID
6 Callback Name 文字列 振動が実行されたコールバック (またはシステム)の名前:
System フィーダー
Robot ビジョン
Control MobileCam
CycleStop ステータス


タイミング図: コールバック内で実行される、ユーザーの操作による振動

タイミング図: システムによる振動

キーポイント


システムによって振動した場合、ログファイルの Data1 列に "System"と表示されます。それ以外の場合、Data1 には、ユーザーによって振動したコールバックの名前が表示されます。

PF_Robotコールバック関数動作ログ

PF_Robotコールバック関数で処理したパーツ数のログです。

列名 内容
4 Type 文字列 動作種類 (“Robot”)
5 ID 整数 パーツID
6 Num 整数

パーツ処理数 (アクティブパーツのみ)

(呼び出し前の座標キュー登録数 ― 呼び出し後の座標キュー登録数)

PF_MobileCamコールバック関数動作ログ

PF_MobileCamコールバック関数のアクション種類のログです。

列名 内容
4 Type 文字列 動作種類 (“MobileCam”)
5 ID 整数 パーツID
6 Action 整数 ロボットを撮像位置へ移動 2001
ロボットを待避 2002

PF_Controlコールバック関数動作ログ

PF_Controlコールバック関数のアクション種類のログです。

列名 内容
4 Type 文字列 動作種類 (“Control”)
5 ID 整数 パーツID
6 Action 整数 ホッパー操作 (パーツ数0) 2100
ホッパー操作 (パーツ追加) 2101
カスタム照明On 2102
カスタム照明Off 2103

タイミング図: フロントライトを使用したビジョン


タイミング図: PF_Control コールバック内で実行される、ユーザーの操作による振動

PF_Statusコールバック関数動作ログ

PF_Statusコールバック関数のステータス種類のログです。

列名 内容
4 Type 文字列 動作種類 (“Status”)
5 ID 整数 パーツID
6 Status 整数 発生したステータスまたはユーザーエラー
正常 0
パーツが供給されない 2200
パーツ過多 2201
ID不正 2202
パラメーター不正 2203
キャリブレーション未完了 2204
システムエラー 2205
検出できないパーツあり 2206
パーツブロブシーケンス異常 2207
パーツビジョンシーケンス異常 2208
フィーダー―使用中 2209
パーツが有効でない 2210
パージが無効になっている 2211
ユーザーエラー 8000 - 8999

PF_Visionコールバック関数動作ログ

PF_Visionコールバック関数で検出した表パーツ、裏パーツの数のログです。

列名 内容
4 Type 文字列 動作種類 (“VisionCallback”)
5 ID 整数 パーツID
6 NumFront 整数 表パーツ検出数
7 NumBack 整数 裏パーツ検出数


タイミング図: PF_Vision コールバック内で実行される、ユーザーの操作による振動

PF_Feeder コールバック関数動作ログ

PF_Feeder コールバック関数の状態ログです。

列名 内容
4 Type 文字列 動作種類 ("Feeder")
5 ID 整数 パーツID
6 State 整数 推奨動作:
判定不能 0
ピックプレース可能 1
パーツ追加供給可能 2
フリップ 3
シフト 4
センタリングとフリップ 5
ホッパーが空 6
後方向にシフト 7
ホッパーから給材し、センタリングとフリップ 8
パーツが多すぎる 9
他種のパーツが混入 10


タイミング図: PF_Feeder コールバック内で実行される、ユーザーの操作による振動

PF_CycleStop コールバック関数動作ログ

PF_CycleStop コールバック関数の状態ログです。

列名 内容
4 Type 文字列 ログ種類 ("CycleStop")
5 ID 整数 パーツID

ログのサンプル

以下は、Part Feedingログのサンプルです。