| 210 | == IOC == |
| 211 | |
| 212 | IOCはNAS上でもいいかと思ったが、開発/実行共に自己完結できるのでローカルに置いておいて、NASにはコピーを置いておくことにした。[[br]] |
| 213 | 以前、サーバーで動作していたIOCを持ってくる際には、何か所か変更点があるので、記載しておく。 |
| 214 | |
| 215 | * configure/RELEASE |
| 216 | |
| 217 | {{{ |
| 218 | SNCSEQ=$(EPICS_BASE)/../modules/soft/seq/2.2.4 |
| 219 | ASYN=$(EPICS_BASE)/../modules/soft/asyn/4-31 |
| 220 | STREAM=$(EPICS_BASE)/../modules/soft/stream/2.7.7 |
| 221 | EPICS_BASE=/opt/epics/R315.5/base |
| 222 | }}} |
| 223 | |
| 224 | * iocBoot/iocXXXX/Makefile |
| 225 | |
| 226 | {{{ |
| 227 | ARCH = linux-x86_64 |
| 228 | ↓ |
| 229 | ARCH = linux-arm |
| 230 | }}} |
| 231 | |
| 232 | * iocBoot/iocXXXX/st.cmd |
| 233 | |
| 234 | {{{ |
| 235 | #!../../bin/linux-x86_64/XXXX |
| 236 | ↓ |
| 237 | #!../../bin/linux-arm/XXXX |
| 238 | }}} |
| 239 | |
| 240 | RS232Cを使う場合には、asynの設定を変更 |
| 241 | |
| 242 | {{{ |
| 243 | drvAsynIPPortConfigure ("PS1", "172.xxx.xxx.xxx:4001") |
| 244 | ↓ |
| 245 | drvAsynSerialPortConfigure ("PS1","/dev/ttyS1") |
| 246 | |
| 247 | 接続するシリアル機器に合わせて修正する。 |
| 248 | |
| 249 | asynSetOption("$(DEV)", -1, "baud", "19200") |
| 250 | asynSetOption("$(DEV)", -1, "parity", "none") |
| 251 | asynSetOption("$(DEV)", -1, "bits", "8") |
| 252 | asynSetOption("$(DEV)", -1, "stop", "1") |
| 253 | asynSetOption("$(DEV)", -1, "clocal", "Y") |
| 254 | asynSetOption("$(DEV)", -1, "crtscts", "N") |
| 255 | }}} |
| 256 | |
| 257 | * XXXXApp/src/Makefile |
| 258 | |
| 259 | DBD設定を変更。 |
| 260 | |
| 261 | {{{ |
| 262 | XXXX_DBD += drvAsynIPPort.dbd |
| 263 | ↓ |
| 264 | XXXX_DBD += drvAsynSerialPort.dbd |
| 265 | }}} |
| 266 | |
| 267 | |
| 268 | 変更後に、{{{make distclean;make}}} |
| 269 | |
| 270 | == IOC自動起動設定 == |
| 271 | |
| 272 | BBB起動時にIOCが起動するように設定し、rootで実行する。[[br]] |
| 273 | 起動用のシェルスクリプトを作成して、crontabの@rebootで起動時に実行するようにする。[[br]] |
| 274 | |
| 275 | {{{ |
| 276 | #!/bin/sh |
| 277 | |
| 278 | TOP=/opt/epics |
| 279 | IOC_DIR=$TOP/app/xxxxxx/iocBoot/iocxxxxx |
| 280 | PROCSERV=$TOP/R315.5/extensions/bin/linux-arm/procServ |
| 281 | PORT=20200 |
| 282 | |
| 283 | . $TOP/R315.5/etc/setenv_R315_5.sh |
| 284 | |
| 285 | $PROCSERV -P $PORT -c $IOC_DIR $IOC_DIR/st.cmd |
| 286 | }}} |