@Slarck Thank you.
Just check and add delay before and after pbhub.begin(), the program with only this library is very stable. However, the program with complete library set was not working.
I tried to remove it ne by one. Finally, I found somthing :
Every time have M5StamPLC.update(); the program cannot read data from Pbhub
I tried to add delay before and after every M5StamPLC.update(), pbhub.begin() Pbhub.analogRead(0), the situation is not solved.
I guess there is some trick while using pbhub together with SD card, StamPLC display , Digital Input scan. However, at this moment I still cannot make everything working at the same time.