We've talked about this at the institute where I'm doing my PhD, and the best solution seemed the following:
First, make a central database for all raw data, that can be accessed per request. Upload/copy data to it as soon as it's collected, including noisy data that might not enter the final analysis. This ensures that any excluded data has to be properly justified.
Second, let everybody know that every so often a random dataset will be pulled out and some basic checks run on it.
Third, run those basic checks. For this you need someone with knowledge of statistics who can tell you what is appropriate for your type of data. A lot of basic aspects of normal data are difficult to simulate without a lot of knowledge on statistics. To give an example, if you take data that have a normal distribution, split it into quintiles, then plot the mean against the variance in each quintile, they should roughly fall on an inverted U-shaped curve. I know of a case where this relationship was perfectly linear, which raised alarm bells. In any case, these checks should be simple and easy to run.
Fourth, decide who will do these checks, because it takes time and effort.
Fifth, make sure you have some idea of what types of mistakes are honest mistakes, and what constitutes actual fraud. Make sure you discuss mechanisms of dealing with these mistakes (and fraud) beforehand, i.e. don't leave this decision in the hands of the supervisor at the moment it happens.
Edit: I guess the main question was what's the PI's responsibility. My reply reflects my opinion that the responsibility should be more institutionalized, and not left just to the PI. On the other hand, the PI could run some of these steps internally if needed / if there is no other help available. But then it might be too elaborate, so perhaps you will get some better answers from other people.